X-Git-Url: http://nitlanguage.org diff --git a/c_src/nit__parser_prod.sep.2.c b/c_src/nit__parser_prod.sep.2.c index ba0788f..0eca80a 100644 --- a/c_src/nit__parser_prod.sep.2.c +++ b/c_src/nit__parser_prod.sep.2.c @@ -1,1019 +1,1228 @@ #include "nit__parser_prod.sep.0.h" -/* method parser_prod#AEqMethid#init_aeqmethid for (self: AEqMethid, nullable TEq) */ -void nit__parser_prod___AEqMethid___init_aeqmethid(val* self, val* p0) { -val* var_n_eq /* var n_eq: nullable TEq */; -var_n_eq = p0; -if (unlikely(var_n_eq == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1498); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AEqMethid___n_eq].val = var_n_eq; /* _n_eq on */ -if (var_n_eq == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1499); -show_backtrace(1); +/* method parser_prod#ASuperPropdef#n_doc= for (self: ASuperPropdef, nullable ADoc) */ +void nit__parser_prod___ASuperPropdef___nit__parser_nodes__ADefinition__n_doc_61d(val* self, val* p0) { +val* var_node /* var node: nullable ADoc */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_doc].val = var_node; /* _n_doc on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_eq,self) on */ -if (unlikely(var_n_eq == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +var = 1; /* arg is null and recv is not */ } -var_n_eq->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#AEqMethid#replace_child for (self: AEqMethid, ANode, nullable ANode) */ -void nit__parser_prod___AEqMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TEq */; +/* method parser_prod#ASuperPropdef#n_kwredef= for (self: ASuperPropdef, nullable TKwredef) */ +void nit__parser_prod___ASuperPropdef___nit__parser_nodes__ADefinition__n_kwredef_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwredef */; +short int var /* : Bool */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AEqMethid___n_eq].val; /* _n_eq on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_eq"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1504); -show_backtrace(1); +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_kwredef].val = var_node; /* _n_kwredef on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var1 = var3; +var4 = !var3; +var1 = var4; goto RET_LABEL2; RET_LABEL2:(void)0; } +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} } -if (var1){ -/* isa TEq */ -cltype = type_nit__TEq.color; -idtype = type_nit__TEq.id; -if(var_new_child == NULL) { -var6 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +} +RET_LABEL:; +} +/* method parser_prod#ASuperPropdef#n_visibility= for (self: ASuperPropdef, nullable AVisibility) */ +void nit__parser_prod___ASuperPropdef___nit__parser_nodes__ADefinition__n_visibility_61d(val* self, val* p0) { +val* var_node /* var node: nullable AVisibility */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_visibility].val = var_node; /* _n_visibility on */ +if (var_node == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1374); +fatal_exit(1); } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +{ /* 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", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TEq", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1505); -show_backtrace(1); } +RET_LABEL:; +} +/* method parser_prod#ASuperPropdef#n_kwsuper= for (self: ASuperPropdef, TKwsuper) */ +void nit__parser_prod___ASuperPropdef___n_kwsuper_61d(val* self, val* p0) { +val* var_node /* var node: TKwsuper */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ASuperPropdef___n_kwsuper].val = var_node; /* _n_kwsuper on */ { -nit__parser_prod___AEqMethid___n_eq_61d(self, var_new_child); /* Direct call parser_prod#AEqMethid#n_eq= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -goto RET_LABEL; -} else { } RET_LABEL:; } -/* method parser_prod#AEqMethid#n_eq= for (self: AEqMethid, TEq) */ -void nit__parser_prod___AEqMethid___n_eq_61d(val* self, val* p0) { -val* var_node /* var node: TEq */; +/* method parser_prod#ASuperPropdef#n_type= for (self: ASuperPropdef, AType) */ +void nit__parser_prod___ASuperPropdef___n_type_61d(val* self, val* p0) { +val* var_node /* var node: AType */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AEqMethid___n_eq].val = var_node; /* _n_eq on */ +self->attrs[COLOR_nit__parser_nodes__ASuperPropdef___n_type].val = var_node; /* _n_type on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AEqMethid#visit_all for (self: AEqMethid, Visitor) */ -void nit__parser_prod___AEqMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ASuperPropdef#n_annotations= for (self: ASuperPropdef, nullable AAnnotations) */ +void nit__parser_prod___ASuperPropdef___nit__parser_nodes__Prod__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#ASuperPropdef#visit_all for (self: ASuperPropdef, Visitor) */ +void nit__parser_prod___ASuperPropdef___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TEq */; +val* var /* : nullable ADoc */; +val* var1 /* : nullable TKwredef */; +val* var2 /* : nullable AVisibility */; +val* var3 /* : TKwsuper */; +val* var4 /* : AType */; +val* var5 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AEqMethid___n_eq].val; /* _n_eq on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_eq"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1519); -show_backtrace(1); -} +var = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_doc].val; /* _n_doc on */ { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -RET_LABEL:; +var1 = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_kwredef].val; /* _n_kwredef on */ +{ +nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -/* method parser_prod#ANeMethid#init_anemethid for (self: ANeMethid, nullable TNe) */ -void nit__parser_prod___ANeMethid___init_anemethid(val* self, val* p0) { -val* var_n_ne /* var n_ne: nullable TNe */; -var_n_ne = p0; -if (unlikely(var_n_ne == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1527); -show_backtrace(1); +var2 = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_visibility].val; /* _n_visibility on */ +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -self->attrs[COLOR_nit__parser_nodes__ANeMethid___n_ne].val = var_n_ne; /* _n_ne on */ -if (var_n_ne == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1528); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_ne,self) on */ -if (unlikely(var_n_ne == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +var3 = self->attrs[COLOR_nit__parser_nodes__ASuperPropdef___n_kwsuper].val; /* _n_kwsuper on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwsuper"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1398); +fatal_exit(1); } -var_n_ne->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_nit__parser_nodes__ASuperPropdef___n_type].val; /* _n_type on */ +if (unlikely(var4 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1399); +fatal_exit(1); } +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var5 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ANeMethid#replace_child for (self: ANeMethid, ANode, nullable ANode) */ -void nit__parser_prod___ANeMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TNe */; -short int var1 /* : Bool */; +/* method parser_prod#AAnnotPropdef#init_aannotpropdef for (self: AAnnotPropdef, nullable ADoc, nullable TKwredef, nullable AVisibility, nullable AAtid, nullable TOpar, Collection[Object], nullable TCpar, nullable AAnnotations) */ +void nit__parser_prod___AAnnotPropdef___init_aannotpropdef(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5, val* p6, val* p7) { +val* var_n_doc /* var n_doc: nullable ADoc */; +val* var_n_kwredef /* var n_kwredef: nullable TKwredef */; +val* var_n_visibility /* var n_visibility: nullable AVisibility */; +val* var_n_atid /* var n_atid: nullable AAtid */; +val* var_n_opar /* var n_opar: nullable TOpar */; +val* var_n_args /* var n_args: Collection[Object] */; +val* var_n_cpar /* var n_cpar: nullable TCpar */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +short int var /* : Bool */; +short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; +short int var4 /* : Bool */; short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ANeMethid___n_ne].val; /* _n_ne on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ne"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1533); -show_backtrace(1); -} +short int var7 /* : Bool */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var11 /* : Bool */; +short int var13 /* : Bool */; +short int var14 /* : Bool */; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var24 /* : Bool */; +val* var26 /* : ANodes[AExpr] */; +val* var28 /* : ANodes[AExpr] */; +short int var29 /* : Bool */; +short int var30 /* : Bool */; +short int var32 /* : Bool */; +short int var33 /* : Bool */; +short int var35 /* : Bool */; +short int var36 /* : Bool */; +short int var38 /* : Bool */; +short int var39 /* : Bool */; { -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_doc = p0; +var_n_kwredef = p1; +var_n_visibility = p2; +var_n_atid = p3; +var_n_opar = p4; +var_n_args = p5; +var_n_cpar = p6; +var_n_annotations = p7; +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_doc].val = var_n_doc; /* _n_doc on */ +if (var_n_doc == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_doc,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +var4 = ((short int(*)(val* self, val* p0))(var_n_doc->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_doc, var_other); /* == on */ +} +var5 = !var4; +var2 = var5; +goto RET_LABEL3; +RET_LABEL3:(void)0; } +var = var2; } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_doc,self) on */ +var_n_doc->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL6:(void)0; } } -if (var1){ -/* isa TNe */ -cltype = type_nit__TNe.color; -idtype = type_nit__TNe.id; -if(var_new_child == NULL) { -var6 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +} +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_kwredef].val = var_n_kwredef; /* _n_kwredef on */ +if (var_n_kwredef == NULL) { +var7 = 0; /* is null */ } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var7 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_kwredef,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var10 = ((short int(*)(val* self, val* p0))(var_n_kwredef->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwredef, var_other); /* == on */ } +var11 = !var10; +var8 = var11; +goto RET_LABEL9; +RET_LABEL9:(void)0; } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TNe", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1534); -show_backtrace(1); +var7 = var8; } +if (var7){ { -nit__parser_prod___ANeMethid___n_ne_61d(self, var_new_child); /* Direct call parser_prod#ANeMethid#n_ne= on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_kwredef,self) on */ +var_n_kwredef->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL12:(void)0; +} } -goto RET_LABEL; } else { } -RET_LABEL:; +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_visibility].val = var_n_visibility; /* _n_visibility on */ +if (var_n_visibility == NULL) { +var13 = 0; /* is null */ +} else { +var13 = 1; /* arg is null and recv is not */ } -/* method parser_prod#ANeMethid#n_ne= for (self: ANeMethid, TNe) */ -void nit__parser_prod___ANeMethid___n_ne_61d(val* self, val* p0) { -val* var_node /* var node: TNe */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ANeMethid___n_ne].val = var_node; /* _n_ne on */ +if (0) { +{ /* Inline kernel#Object#!= (var_n_visibility,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var16 = ((short int(*)(val* self, val* p0))(var_n_visibility->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_visibility, var_other); /* == on */ } +var17 = !var16; +var14 = var17; +goto RET_LABEL15; +RET_LABEL15:(void)0; } -RET_LABEL:; -} -/* method parser_prod#ANeMethid#visit_all for (self: ANeMethid, Visitor) */ -void nit__parser_prod___ANeMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TNe */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ANeMethid___n_ne].val; /* _n_ne on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ne"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1548); -show_backtrace(1); +var13 = var14; } +if (var13){ { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_visibility,self) on */ +var_n_visibility->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL18:(void)0; } -RET_LABEL:; } -/* method parser_prod#ALeMethid#init_alemethid for (self: ALeMethid, nullable TLe) */ -void nit__parser_prod___ALeMethid___init_alemethid(val* self, val* p0) { -val* var_n_le /* var n_le: nullable TLe */; -var_n_le = p0; -if (unlikely(var_n_le == NULL)) { +} else { +} +if (unlikely(var_n_atid == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1556); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1421); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ALeMethid___n_le].val = var_n_le; /* _n_le on */ -if (var_n_le == NULL) { +self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_atid].val = var_n_atid; /* _n_atid on */ +if (var_n_atid == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1557); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1422); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_le,self) on */ -if (unlikely(var_n_le == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_atid,self) on */ +if (unlikely(var_n_atid == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_le->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_atid->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL19:(void)0; } } -RET_LABEL:; +self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_opar].val = var_n_opar; /* _n_opar on */ +if (var_n_opar == NULL) { +var20 = 0; /* is null */ +} else { +var20 = 1; /* arg is null and recv is not */ } -/* method parser_prod#ALeMethid#replace_child for (self: ALeMethid, ANode, nullable ANode) */ -void nit__parser_prod___ALeMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TLe */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ALeMethid___n_le].val; /* _n_le on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_le"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1562); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; +if (0) { +{ /* Inline kernel#Object#!= (var_n_opar,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +var23 = ((short int(*)(val* self, val* p0))(var_n_opar->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_opar, var_other); /* == on */ } +var24 = !var23; +var21 = var24; +goto RET_LABEL22; +RET_LABEL22:(void)0; } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var20 = var21; +} +if (var20){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_opar,self) on */ +var_n_opar->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL25:(void)0; } } -if (var1){ -/* isa TLe */ -cltype = type_nit__TLe.color; -idtype = type_nit__TLe.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; } +{ +{ /* Inline parser_nodes#AAnnotation#n_args (self) on */ +var28 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_args].val; /* _n_args on */ +if (unlikely(var28 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2988); +fatal_exit(1); +} +var26 = var28; +RET_LABEL27:(void)0; } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLe", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1563); -show_backtrace(1); } { -nit__parser_prod___ALeMethid___n_le_61d(self, var_new_child); /* Direct call parser_prod#ALeMethid#n_le= on */ +nit___nit__ANodes___unsafe_add_all(var26, var_n_args); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ } -goto RET_LABEL; +self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_cpar].val = var_n_cpar; /* _n_cpar on */ +if (var_n_cpar == NULL) { +var29 = 0; /* is null */ } else { +var29 = 1; /* arg is null and recv is not */ } -RET_LABEL:; +if (0) { +{ /* Inline kernel#Object#!= (var_n_cpar,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var32 = ((short int(*)(val* self, val* p0))(var_n_cpar->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_cpar, var_other); /* == on */ } -/* method parser_prod#ALeMethid#n_le= for (self: ALeMethid, TLe) */ -void nit__parser_prod___ALeMethid___n_le_61d(val* self, val* p0) { -val* var_node /* var node: TLe */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALeMethid___n_le].val = var_node; /* _n_le on */ +var33 = !var32; +var30 = var33; +goto RET_LABEL31; +RET_LABEL31:(void)0; +} +var29 = var30; +} +if (var29){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_cpar,self) on */ +var_n_cpar->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL34:(void)0; } } -RET_LABEL:; +} else { } -/* method parser_prod#ALeMethid#visit_all for (self: ALeMethid, Visitor) */ -void nit__parser_prod___ALeMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TLe */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ALeMethid___n_le].val; /* _n_le on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_le"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1577); -show_backtrace(1); +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +if (var_n_annotations == NULL) { +var35 = 0; /* is null */ +} else { +var35 = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,((val*)NULL)) on */ +var_other = ((val*)NULL); { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +var38 = ((short int(*)(val* self, val* p0))(var_n_annotations->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_annotations, var_other); /* == on */ } -RET_LABEL:; +var39 = !var38; +var36 = var39; +goto RET_LABEL37; +RET_LABEL37:(void)0; } -/* method parser_prod#AGeMethid#init_agemethid for (self: AGeMethid, nullable TGe) */ -void nit__parser_prod___AGeMethid___init_agemethid(val* self, val* p0) { -val* var_n_ge /* var n_ge: nullable TGe */; -var_n_ge = p0; -if (unlikely(var_n_ge == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1585); -show_backtrace(1); +var35 = var36; } -self->attrs[COLOR_nit__parser_nodes__AGeMethid___n_ge].val = var_n_ge; /* _n_ge on */ -if (var_n_ge == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1586); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_ge,self) on */ -if (unlikely(var_n_ge == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if (var35){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL40:(void)0; } -var_n_ge->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +} else { } RET_LABEL:; } -/* method parser_prod#AGeMethid#replace_child for (self: AGeMethid, ANode, nullable ANode) */ -void nit__parser_prod___AGeMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AAnnotPropdef#replace_child for (self: AAnnotPropdef, ANode, nullable ANode) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TGe */; +val* var /* : nullable ADoc */; short int var1 /* : Bool */; +short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; +short int var4 /* : Bool */; short int var6 /* : Bool */; +short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; +val* var8 /* : nullable TKwredef */; +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 /* : nullable AVisibility */; +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 /* : AAtid */; +short int var31 /* : Bool */; +short int var33 /* : Bool */; +short int var35 /* : Bool */; +short int var36 /* : Bool */; +int cltype37; +int idtype38; +const char* var_class_name39; +val* var40 /* : nullable TOpar */; +short int var41 /* : Bool */; +short int var42 /* : Bool */; +short int var44 /* : Bool */; +short int var46 /* : Bool */; +short int var47 /* : Bool */; +int cltype48; +int idtype49; +const char* var_class_name50; +val* var51 /* : ANodes[AExpr] */; +val* var53 /* : ANodes[AExpr] */; +short int var54 /* : Bool */; +val* var55 /* : nullable TCpar */; +short int var56 /* : Bool */; +short int var57 /* : Bool */; +short int var59 /* : Bool */; +short int var61 /* : Bool */; +short int var62 /* : Bool */; +int cltype63; +int idtype64; +const char* var_class_name65; +val* var66 /* : nullable AAnnotations */; +short int var67 /* : Bool */; +short int var68 /* : Bool */; +short int var70 /* : Bool */; +short int var72 /* : Bool */; +short int var73 /* : Bool */; +int cltype74; +int idtype75; +const char* var_class_name76; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AGeMethid___n_ge].val; /* _n_ge on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ge"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1591); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_doc].val; /* _n_doc 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 */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var6 = var == var_other; +var4 = var6; +goto RET_LABEL5; +RET_LABEL5:(void)0; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var2 = var4; +goto RET_LABEL3; +RET_LABEL3:(void)0; } +var1 = var2; } if (var1){ -/* isa TGe */ -cltype = type_nit__TGe.color; -idtype = type_nit__TGe.id; +/* isa nullable ADoc */ +cltype = type_nullable__nit__ADoc.color; +idtype = type_nullable__nit__ADoc.id; if(var_new_child == NULL) { -var6 = 0; +var7 = 1; } else { if(cltype >= var_new_child->type->table_size) { -var6 = 0; +var7 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var7 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var6)) { +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`", "TGe", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1592); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ADoc", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1435); +fatal_exit(1); } { -nit__parser_prod___AGeMethid___n_ge_61d(self, var_new_child); /* Direct call parser_prod#AGeMethid#n_ge= on */ +nit__parser_prod___AAnnotPropdef___nit__parser_nodes__ADefinition__n_doc_61d(self, var_new_child); /* Direct call parser_prod#AAnnotPropdef#n_doc= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AGeMethid#n_ge= for (self: AGeMethid, TGe) */ -void nit__parser_prod___AGeMethid___n_ge_61d(val* self, val* p0) { -val* var_node /* var node: TGe */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AGeMethid___n_ge].val = var_node; /* _n_ge on */ +var8 = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_kwredef].val; /* _n_kwredef on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AGeMethid#visit_all for (self: AGeMethid, Visitor) */ -void nit__parser_prod___AGeMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TGe */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AGeMethid___n_ge].val; /* _n_ge on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ge"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1606); -show_backtrace(1); +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +var14 = var8 == var_other; +var12 = var14; +goto RET_LABEL13; +RET_LABEL13:(void)0; } -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -RET_LABEL:; +var10 = var12; +goto RET_LABEL11; +RET_LABEL11:(void)0; } -/* method parser_prod#ALtMethid#init_altmethid for (self: ALtMethid, nullable TLt) */ -void nit__parser_prod___ALtMethid___init_altmethid(val* self, val* p0) { -val* var_n_lt /* var n_lt: nullable TLt */; -var_n_lt = p0; -if (unlikely(var_n_lt == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1614); -show_backtrace(1); +var9 = var10; } -self->attrs[COLOR_nit__parser_nodes__ALtMethid___n_lt].val = var_n_lt; /* _n_lt on */ -if (var_n_lt == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1615); -show_backtrace(1); +if (var9){ +/* isa nullable TKwredef */ +cltype16 = type_nullable__nit__TKwredef.color; +idtype17 = type_nullable__nit__TKwredef.id; +if(var_new_child == NULL) { +var15 = 1; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_lt,self) on */ -if (unlikely(var_n_lt == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if(cltype16 >= var_new_child->type->table_size) { +var15 = 0; +} else { +var15 = var_new_child->type->type_table[cltype16] == idtype17; } -var_n_lt->attrs[COLOR_nit__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`", "nullable TKwredef", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1439); +fatal_exit(1); } -RET_LABEL:; +{ +nit__parser_prod___AAnnotPropdef___nit__parser_nodes__ADefinition__n_kwredef_61d(self, var_new_child); /* Direct call parser_prod#AAnnotPropdef#n_kwredef= on */ } -/* method parser_prod#ALtMethid#replace_child for (self: ALtMethid, ANode, nullable ANode) */ -void nit__parser_prod___ALtMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TLt */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ALtMethid___n_lt].val; /* _n_lt on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_lt"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1620); -show_backtrace(1); +goto RET_LABEL; +} else { } -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var19 = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_visibility].val; /* _n_visibility 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 (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(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; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; } +var20 = var21; } -if (var1){ -/* isa TLt */ -cltype = type_nit__TLt.color; -idtype = type_nit__TLt.id; +if (var20){ +/* isa nullable AVisibility */ +cltype27 = type_nullable__nit__AVisibility.color; +idtype28 = type_nullable__nit__AVisibility.id; if(var_new_child == NULL) { -var6 = 0; +var26 = 1; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var26 = var_new_child->type->type_table[cltype27] == idtype28; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLt", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1621); -show_backtrace(1); +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 AVisibility", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1443); +fatal_exit(1); } { -nit__parser_prod___ALtMethid___n_lt_61d(self, var_new_child); /* Direct call parser_prod#ALtMethid#n_lt= on */ +nit__parser_prod___AAnnotPropdef___nit__parser_nodes__ADefinition__n_visibility_61d(self, var_new_child); /* Direct call parser_prod#AAnnotPropdef#n_visibility= on */ } goto RET_LABEL; } else { } -RET_LABEL:; +var30 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_atid].val; /* _n_atid on */ +if (unlikely(var30 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_atid"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1446); +fatal_exit(1); } -/* method parser_prod#ALtMethid#n_lt= for (self: ALtMethid, TLt) */ -void nit__parser_prod___ALtMethid___n_lt_61d(val* self, val* p0) { -val* var_node /* var node: TLt */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALtMethid___n_lt].val = var_node; /* _n_lt on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#== (var30,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ +var35 = var30 == var_other; +var33 = var35; +goto RET_LABEL34; +RET_LABEL34:(void)0; } } -RET_LABEL:; +var31 = var33; +goto RET_LABEL32; +RET_LABEL32:(void)0; } -/* method parser_prod#ALtMethid#visit_all for (self: ALtMethid, Visitor) */ -void nit__parser_prod___ALtMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TLt */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ALtMethid___n_lt].val; /* _n_lt on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_lt"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1635); -show_backtrace(1); } -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#AGtMethid#init_agtmethid for (self: AGtMethid, nullable TGt) */ -void nit__parser_prod___AGtMethid___init_agtmethid(val* self, val* p0) { -val* var_n_gt /* var n_gt: nullable TGt */; -var_n_gt = p0; -if (unlikely(var_n_gt == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1643); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AGtMethid___n_gt].val = var_n_gt; /* _n_gt on */ -if (var_n_gt == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1644); -show_backtrace(1); +if (var31){ +/* isa AAtid */ +cltype37 = type_nit__AAtid.color; +idtype38 = type_nit__AAtid.id; +if(var_new_child == NULL) { +var36 = 0; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_gt,self) on */ -if (unlikely(var_n_gt == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if(cltype37 >= var_new_child->type->table_size) { +var36 = 0; +} else { +var36 = var_new_child->type->type_table[cltype37] == idtype38; } -var_n_gt->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +if (unlikely(!var36)) { +var_class_name39 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAtid", var_class_name39); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1447); +fatal_exit(1); } -RET_LABEL:; +{ +nit__parser_prod___AAnnotPropdef___nit__parser_nodes__AAnnotation__n_atid_61d(self, var_new_child); /* Direct call parser_prod#AAnnotPropdef#n_atid= on */ } -/* method parser_prod#AGtMethid#replace_child for (self: AGtMethid, ANode, nullable ANode) */ -void nit__parser_prod___AGtMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TGt */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AGtMethid___n_gt].val; /* _n_gt on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_gt"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1649); -show_backtrace(1); +goto RET_LABEL; +} else { } -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var40 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_opar].val; /* _n_opar on */ +if (var40 == NULL) { +var41 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var40,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +{ /* Inline kernel#Object#is_same_instance (var40,var_other) on */ +var46 = var40 == var_other; +var44 = var46; +goto RET_LABEL45; +RET_LABEL45:(void)0; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var42 = var44; +goto RET_LABEL43; +RET_LABEL43:(void)0; } +var41 = var42; } -if (var1){ -/* isa TGt */ -cltype = type_nit__TGt.color; -idtype = type_nit__TGt.id; +if (var41){ +/* isa nullable TOpar */ +cltype48 = type_nullable__nit__TOpar.color; +idtype49 = type_nullable__nit__TOpar.id; if(var_new_child == NULL) { -var6 = 0; +var47 = 1; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +if(cltype48 >= var_new_child->type->table_size) { +var47 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var47 = var_new_child->type->type_table[cltype48] == idtype49; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGt", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1650); -show_backtrace(1); +if (unlikely(!var47)) { +var_class_name50 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TOpar", var_class_name50); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1451); +fatal_exit(1); } { -nit__parser_prod___AGtMethid___n_gt_61d(self, var_new_child); /* Direct call parser_prod#AGtMethid#n_gt= on */ +nit__parser_prod___AAnnotPropdef___nit__parser_nodes__AAnnotation__n_opar_61d(self, var_new_child); /* Direct call parser_prod#AAnnotPropdef#n_opar= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AGtMethid#n_gt= for (self: AGtMethid, TGt) */ -void nit__parser_prod___AGtMethid___n_gt_61d(val* self, val* p0) { -val* var_node /* var node: TGt */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AGtMethid___n_gt].val = var_node; /* _n_gt on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline parser_nodes#AAnnotation#n_args (self) on */ +var53 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_args].val; /* _n_args on */ +if (unlikely(var53 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2988); +fatal_exit(1); } +var51 = var53; +RET_LABEL52:(void)0; } -RET_LABEL:; } -/* method parser_prod#AGtMethid#visit_all for (self: AGtMethid, Visitor) */ -void nit__parser_prod___AGtMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TGt */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AGtMethid___n_gt].val; /* _n_gt on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_gt"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1664); -show_backtrace(1); +{ +var54 = nit___nit__ANodes___replace_child(var51, var_old_child, var_new_child); +} +if (var54){ +goto RET_LABEL; +} else { } +var55 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_cpar].val; /* _n_cpar on */ +if (var55 == NULL) { +var56 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var55,var_old_child) on */ +var_other = var_old_child; { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#is_same_instance (var55,var_other) on */ +var61 = var55 == var_other; +var59 = var61; +goto RET_LABEL60; +RET_LABEL60:(void)0; } -RET_LABEL:; } -/* method parser_prod#ALlMethid#init_allmethid for (self: ALlMethid, nullable TLl) */ -void nit__parser_prod___ALlMethid___init_allmethid(val* self, val* p0) { -val* var_n_ll /* var n_ll: nullable TLl */; -var_n_ll = p0; -if (unlikely(var_n_ll == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1672); -show_backtrace(1); +var57 = var59; +goto RET_LABEL58; +RET_LABEL58:(void)0; } -self->attrs[COLOR_nit__parser_nodes__ALlMethid___n_ll].val = var_n_ll; /* _n_ll on */ -if (var_n_ll == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1673); -show_backtrace(1); +var56 = var57; +} +if (var56){ +/* isa nullable TCpar */ +cltype63 = type_nullable__nit__TCpar.color; +idtype64 = type_nullable__nit__TCpar.id; +if(var_new_child == NULL) { +var62 = 1; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_ll,self) on */ -if (unlikely(var_n_ll == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if(cltype63 >= var_new_child->type->table_size) { +var62 = 0; +} else { +var62 = var_new_child->type->type_table[cltype63] == idtype64; } -var_n_ll->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +if (unlikely(!var62)) { +var_class_name65 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TCpar", var_class_name65); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1456); +fatal_exit(1); } -RET_LABEL:; +{ +nit__parser_prod___AAnnotPropdef___nit__parser_nodes__AAnnotation__n_cpar_61d(self, var_new_child); /* Direct call parser_prod#AAnnotPropdef#n_cpar= on */ } -/* method parser_prod#ALlMethid#replace_child for (self: ALlMethid, ANode, nullable ANode) */ -void nit__parser_prod___ALlMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TLl */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ALlMethid___n_ll].val; /* _n_ll on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ll"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1678); -show_backtrace(1); +goto RET_LABEL; +} else { } -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var66 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var66 == NULL) { +var67 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var66,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +{ /* Inline kernel#Object#is_same_instance (var66,var_other) on */ +var72 = var66 == var_other; +var70 = var72; +goto RET_LABEL71; +RET_LABEL71:(void)0; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var68 = var70; +goto RET_LABEL69; +RET_LABEL69:(void)0; } +var67 = var68; } -if (var1){ -/* isa TLl */ -cltype = type_nit__TLl.color; -idtype = type_nit__TLl.id; +if (var67){ +/* isa nullable AAnnotations */ +cltype74 = type_nullable__nit__AAnnotations.color; +idtype75 = type_nullable__nit__AAnnotations.id; if(var_new_child == NULL) { -var6 = 0; +var73 = 1; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +if(cltype74 >= var_new_child->type->table_size) { +var73 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var73 = var_new_child->type->type_table[cltype74] == idtype75; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLl", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1679); -show_backtrace(1); +if (unlikely(!var73)) { +var_class_name76 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name76); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1460); +fatal_exit(1); } { -nit__parser_prod___ALlMethid___n_ll_61d(self, var_new_child); /* Direct call parser_prod#ALlMethid#n_ll= on */ +nit__parser_prod___AAnnotPropdef___nit__parser_nodes__Prod__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AAnnotPropdef#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ALlMethid#n_ll= for (self: ALlMethid, TLl) */ -void nit__parser_prod___ALlMethid___n_ll_61d(val* self, val* p0) { -val* var_node /* var node: TLl */; +/* method parser_prod#AAnnotPropdef#n_doc= for (self: AAnnotPropdef, nullable ADoc) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__ADefinition__n_doc_61d(val* self, val* p0) { +val* var_node /* var node: nullable ADoc */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALlMethid___n_ll].val = var_node; /* _n_ll on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_doc].val = var_node; /* _n_doc on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -RET_LABEL:; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -/* method parser_prod#ALlMethid#visit_all for (self: ALlMethid, Visitor) */ -void nit__parser_prod___ALlMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TLl */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ALlMethid___n_ll].val; /* _n_ll on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ll"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1693); -show_backtrace(1); +var = var1; } +if (var){ { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } -/* method parser_prod#AGgMethid#init_aggmethid for (self: AGgMethid, nullable TGg) */ -void nit__parser_prod___AGgMethid___init_aggmethid(val* self, val* p0) { -val* var_n_gg /* var n_gg: nullable TGg */; -var_n_gg = p0; -if (unlikely(var_n_gg == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1701); -show_backtrace(1); } -self->attrs[COLOR_nit__parser_nodes__AGgMethid___n_gg].val = var_n_gg; /* _n_gg on */ -if (var_n_gg == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1702); -show_backtrace(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_gg,self) on */ -if (unlikely(var_n_gg == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_gg->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} } RET_LABEL:; } -/* method parser_prod#AGgMethid#replace_child for (self: AGgMethid, ANode, nullable ANode) */ -void nit__parser_prod___AGgMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TGg */; +/* method parser_prod#AAnnotPropdef#n_kwredef= for (self: AAnnotPropdef, nullable TKwredef) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__ADefinition__n_kwredef_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwredef */; +short int var /* : Bool */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AGgMethid___n_gg].val; /* _n_gg on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_gg"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1707); -show_backtrace(1); +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_kwredef].val = var_node; /* _n_kwredef on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -} -var1 = var3; +var4 = !var3; +var1 = var4; goto RET_LABEL2; RET_LABEL2:(void)0; } +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} } -if (var1){ -/* isa TGg */ -cltype = type_nit__TGg.color; -idtype = type_nit__TGg.id; -if(var_new_child == NULL) { -var6 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +} +RET_LABEL:; +} +/* method parser_prod#AAnnotPropdef#n_visibility= for (self: AAnnotPropdef, nullable AVisibility) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__ADefinition__n_visibility_61d(val* self, val* p0) { +val* var_node /* var node: nullable AVisibility */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ADefinition___n_visibility].val = var_node; /* _n_visibility on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGg", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1708); -show_backtrace(1); +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; } +if (var){ { -nit__parser_prod___AGgMethid___n_gg_61d(self, var_new_child); /* Direct call parser_prod#AGgMethid#n_gg= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} } -goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AGgMethid#n_gg= for (self: AGgMethid, TGg) */ -void nit__parser_prod___AGgMethid___n_gg_61d(val* self, val* p0) { -val* var_node /* var node: TGg */; +/* method parser_prod#AAnnotPropdef#n_atid= for (self: AAnnotPropdef, AAtid) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__AAnnotation__n_atid_61d(val* self, val* p0) { +val* var_node /* var node: AAtid */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AGgMethid___n_gg].val = var_node; /* _n_gg on */ +self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_atid].val = var_node; /* _n_atid on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AGgMethid#visit_all for (self: AGgMethid, Visitor) */ -void nit__parser_prod___AGgMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TGg */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AGgMethid___n_gg].val; /* _n_gg on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_gg"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1722); -show_backtrace(1); +/* method parser_prod#AAnnotPropdef#n_opar= for (self: AAnnotPropdef, nullable TOpar) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__AAnnotation__n_opar_61d(val* self, val* p0) { +val* var_node /* var node: nullable TOpar */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_opar].val = var_node; /* _n_opar on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -RET_LABEL:; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -/* method parser_prod#ABraMethid#init_abramethid for (self: ABraMethid, nullable TObra, nullable TCbra) */ -void nit__parser_prod___ABraMethid___init_abramethid(val* self, val* p0, val* p1) { -val* var_n_obra /* var n_obra: nullable TObra */; -val* var_n_cbra /* var n_cbra: nullable TCbra */; -var_n_obra = p0; -var_n_cbra = p1; -if (unlikely(var_n_obra == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1731); -show_backtrace(1); +var = var1; } -self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_obra].val = var_n_obra; /* _n_obra on */ -if (var_n_obra == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1732); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on */ -if (unlikely(var_n_obra == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } -var_n_obra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AAnnotPropdef#n_cpar= for (self: AAnnotPropdef, nullable TCpar) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__AAnnotation__n_cpar_61d(val* self, val* p0) { +val* var_node /* var node: nullable TCpar */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_cpar].val = var_node; /* _n_cpar on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AAnnotPropdef#n_annotations= for (self: AAnnotPropdef, nullable AAnnotations) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__Prod__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AAnnotPropdef#visit_all for (self: AAnnotPropdef, Visitor) */ +void nit__parser_prod___AAnnotPropdef___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : nullable ADoc */; +val* var1 /* : nullable TKwredef */; +val* var2 /* : nullable AVisibility */; +val* var3 /* : AAtid */; +val* var4 /* : nullable TOpar */; +val* var5 /* : ANodes[AExpr] */; +val* var7 /* : ANodes[AExpr] */; +val* var8 /* : nullable TCpar */; +val* var9 /* : nullable AAnnotations */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_doc].val; /* _n_doc on */ +{ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var1 = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_kwredef].val; /* _n_kwredef on */ +{ +nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var2 = self->attrs[COLOR_nit__parser_nodes__ADefinition___n_visibility].val; /* _n_visibility on */ +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_atid].val; /* _n_atid on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_atid"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1507); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_opar].val; /* _n_opar on */ +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +{ +{ /* Inline parser_nodes#AAnnotation#n_args (self) on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_args].val; /* _n_args on */ +if (unlikely(var7 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2988); +fatal_exit(1); +} +var5 = var7; +RET_LABEL6:(void)0; +} +} +{ +nit___nit__ANodes___visit_all(var5, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ +} +var8 = self->attrs[COLOR_nit__parser_nodes__AAnnotation___n_cpar].val; /* _n_cpar on */ +{ +nit___nit__Visitor___enter_visit(var_v, var8); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var9 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +nit___nit__Visitor___enter_visit(var_v, var9); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method parser_prod#AIdMethid#init_aidmethid for (self: AIdMethid, nullable TId) */ +void nit__parser_prod___AIdMethid___init_aidmethid(val* self, val* p0) { +val* var_n_id /* var n_id: nullable TId */; +{ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_cbra == NULL)) { +var_n_id = p0; +if (unlikely(var_n_id == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1733); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1519); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_cbra].val = var_n_cbra; /* _n_cbra on */ -if (var_n_cbra == NULL) { +self->attrs[COLOR_nit__parser_nodes__AIdMethid___n_id].val = var_n_id; /* _n_id on */ +if (var_n_id == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1734); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1520); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_cbra,self) on */ -if (unlikely(var_n_cbra == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ +if (unlikely(var_n_id == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_cbra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraMethid#replace_child for (self: ABraMethid, ANode, nullable ANode) */ -void nit__parser_prod___ABraMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AIdMethid#replace_child for (self: AIdMethid, ANode, nullable ANode) */ +void nit__parser_prod___AIdMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TObra */; +val* var /* : TId */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -1022,27 +1231,19 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TCbra */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_obra].val; /* _n_obra on */ +var = self->attrs[COLOR_nit__parser_nodes__AIdMethid___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1739); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1525); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -1055,9 +1256,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TObra */ -cltype = type_nit__TObra.color; -idtype = type_nit__TObra.id; +/* isa TId */ +cltype = type_nit__TId.color; +idtype = type_nit__TId.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -1069,149 +1270,84 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1740); -show_backtrace(1); -} -{ -nit__parser_prod___ABraMethid___n_obra_61d(self, var_new_child); /* Direct call parser_prod#ABraMethid#n_obra= on */ -} -goto RET_LABEL; -} else { -} -var7 = self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_cbra].val; /* _n_cbra on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1743); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -} -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; -} -} -if (var8){ -/* isa TCbra */ -cltype14 = type_nit__TCbra.color; -idtype15 = type_nit__TCbra.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; -} -} -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCbra", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1744); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1526); +fatal_exit(1); } { -nit__parser_prod___ABraMethid___n_cbra_61d(self, var_new_child); /* Direct call parser_prod#ABraMethid#n_cbra= on */ +nit__parser_prod___AIdMethid___n_id_61d(self, var_new_child); /* Direct call parser_prod#AIdMethid#n_id= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ABraMethid#n_obra= for (self: ABraMethid, TObra) */ -void nit__parser_prod___ABraMethid___n_obra_61d(val* self, val* p0) { -val* var_node /* var node: TObra */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_obra].val = var_node; /* _n_obra on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ABraMethid#n_cbra= for (self: ABraMethid, TCbra) */ -void nit__parser_prod___ABraMethid___n_cbra_61d(val* self, val* p0) { -val* var_node /* var node: TCbra */; +/* method parser_prod#AIdMethid#n_id= for (self: AIdMethid, TId) */ +void nit__parser_prod___AIdMethid___n_id_61d(val* self, val* p0) { +val* var_node /* var node: TId */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_cbra].val = var_node; /* _n_cbra on */ +self->attrs[COLOR_nit__parser_nodes__AIdMethid___n_id].val = var_node; /* _n_id on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraMethid#visit_all for (self: ABraMethid, Visitor) */ -void nit__parser_prod___ABraMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AIdMethid#visit_all for (self: AIdMethid, Visitor) */ +void nit__parser_prod___AIdMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TObra */; -val* var1 /* : TCbra */; +val* var /* : TId */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_obra].val; /* _n_obra on */ +var = self->attrs[COLOR_nit__parser_nodes__AIdMethid___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1763); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1540); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_cbra].val; /* _n_cbra on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1764); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#APlusMethid#init_aplusmethid for (self: APlusMethid, nullable TPlus) */ +void nit__parser_prod___APlusMethid___init_aplusmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TPlus */; { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -RET_LABEL:; } -/* method parser_prod#AStarshipMethid#init_astarshipmethid for (self: AStarshipMethid, nullable TStarship) */ -void nit__parser_prod___AStarshipMethid___init_astarshipmethid(val* self, val* p0) { -val* var_n_starship /* var n_starship: nullable TStarship */; -var_n_starship = p0; -if (unlikely(var_n_starship == NULL)) { +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1772); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1548); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AStarshipMethid___n_starship].val = var_n_starship; /* _n_starship on */ -if (var_n_starship == NULL) { +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1773); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1549); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_starship,self) on */ -if (unlikely(var_n_starship == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_starship->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } } RET_LABEL:; } -/* method parser_prod#AStarshipMethid#replace_child for (self: AStarshipMethid, ANode, nullable ANode) */ -void nit__parser_prod___AStarshipMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#APlusMethid#replace_child for (self: APlusMethid, ANode, nullable ANode) */ +void nit__parser_prod___APlusMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TStarship */; +val* var /* : Token */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -1222,17 +1358,17 @@ int idtype; const char* var_class_name; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AStarshipMethid___n_starship].val; /* _n_starship on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_starship"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1778); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1554); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -1245,9 +1381,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TStarship */ -cltype = type_nit__TStarship.color; -idtype = type_nit__TStarship.id; +/* isa TPlus */ +cltype = type_nit__TPlus.color; +idtype = type_nit__TPlus.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -1259,102 +1395,84 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStarship", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1779); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TPlus", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1555); +fatal_exit(1); } { -nit__parser_prod___AStarshipMethid___n_starship_61d(self, var_new_child); /* Direct call parser_prod#AStarshipMethid#n_starship= on */ +nit__parser_prod___APlusMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#APlusMethid#n_op= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AStarshipMethid#n_starship= for (self: AStarshipMethid, TStarship) */ -void nit__parser_prod___AStarshipMethid___n_starship_61d(val* self, val* p0) { -val* var_node /* var node: TStarship */; +/* method parser_prod#APlusMethid#n_op= for (self: APlusMethid, Token) */ +void nit__parser_prod___APlusMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AStarshipMethid___n_starship].val = var_node; /* _n_starship on */ +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AStarshipMethid#visit_all for (self: AStarshipMethid, Visitor) */ -void nit__parser_prod___AStarshipMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#APlusMethid#visit_all for (self: APlusMethid, Visitor) */ +void nit__parser_prod___APlusMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TStarship */; +val* var /* : Token */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AStarshipMethid___n_starship].val; /* _n_starship on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_starship"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1793); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1569); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AAssignMethid#init_aassignmethid for (self: AAssignMethid, nullable TId, nullable TAssign) */ -void nit__parser_prod___AAssignMethid___init_aassignmethid(val* self, val* p0, val* p1) { -val* var_n_id /* var n_id: nullable TId */; -val* var_n_assign /* var n_assign: nullable TAssign */; -var_n_id = p0; -var_n_assign = p1; -if (unlikely(var_n_id == NULL)) { +/* method parser_prod#AMinusMethid#init_aminusmethid for (self: AMinusMethid, nullable TMinus) */ +void nit__parser_prod___AMinusMethid___init_aminusmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TMinus */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1802); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1577); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1803); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1578); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_op->attrs[COLOR_nit__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", FILE_nit__parser_prod, 1804); -show_backtrace(1); +RET_LABEL:; } -self->attrs[COLOR_nit__parser_nodes__AAssignMethid___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", FILE_nit__parser_prod, 1805); -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", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAssignMethid#replace_child for (self: AAssignMethid, ANode, nullable ANode) */ -void nit__parser_prod___AAssignMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AMinusMethid#replace_child for (self: AMinusMethid, ANode, nullable ANode) */ +void nit__parser_prod___AMinusMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TId */; +val* var /* : Token */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -1363,27 +1481,19 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TAssign */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1810); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1583); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -1396,9 +1506,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TId */ -cltype = type_nit__TId.color; -idtype = type_nit__TId.id; +/* isa TMinus */ +cltype = type_nit__TMinus.color; +idtype = type_nit__TMinus.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -1410,195 +1520,209 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1811); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TMinus", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1584); +fatal_exit(1); } { -nit__parser_prod___AAssignMethid___n_id_61d(self, var_new_child); /* Direct call parser_prod#AAssignMethid#n_id= on */ +nit__parser_prod___AMinusMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AMinusMethid#n_op= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_assign].val; /* _n_assign on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1814); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#AMinusMethid#n_op= for (self: AMinusMethid, Token) */ +void nit__parser_prod___AMinusMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AMinusMethid#visit_all for (self: AMinusMethid, Visitor) */ +void nit__parser_prod___AMinusMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1598); +fatal_exit(1); +} { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } +RET_LABEL:; } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +/* method parser_prod#AStarMethid#init_astarmethid for (self: AStarMethid, nullable TStar) */ +void nit__parser_prod___AStarMethid___init_astarmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TStar */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } } -if (var8){ -/* isa TAssign */ -cltype14 = type_nit__TAssign.color; -idtype15 = type_nit__TAssign.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1606); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1607); +fatal_exit(1); } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1815); -show_backtrace(1); +} +RET_LABEL:; +} +/* method parser_prod#AStarMethid#replace_child for (self: AStarMethid, ANode, nullable ANode) */ +void nit__parser_prod___AStarMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1612); +fatal_exit(1); } { -nit__parser_prod___AAssignMethid___n_assign_61d(self, var_new_child); /* Direct call parser_prod#AAssignMethid#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 */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -goto RET_LABEL; +} +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +} +if (var1){ +/* isa TStar */ +cltype = type_nit__TStar.color; +idtype = type_nit__TStar.id; +if(var_new_child == NULL) { +var6 = 0; } else { +if(cltype >= var_new_child->type->table_size) { +var6 = 0; +} else { +var6 = var_new_child->type->type_table[cltype] == idtype; } -RET_LABEL:; } -/* method parser_prod#AAssignMethid#n_id= for (self: AAssignMethid, TId) */ -void nit__parser_prod___AAssignMethid___n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_id].val = var_node; /* _n_id on */ +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStar", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1613); +fatal_exit(1); +} { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +nit__parser_prod___AStarMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AStarMethid#n_op= on */ } +goto RET_LABEL; +} else { } RET_LABEL:; } -/* method parser_prod#AAssignMethid#n_assign= for (self: AAssignMethid, TAssign) */ -void nit__parser_prod___AAssignMethid___n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; +/* method parser_prod#AStarMethid#n_op= for (self: AStarMethid, Token) */ +void nit__parser_prod___AStarMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_assign].val = var_node; /* _n_assign on */ +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAssignMethid#visit_all for (self: AAssignMethid, Visitor) */ -void nit__parser_prod___AAssignMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AStarMethid#visit_all for (self: AStarMethid, Visitor) */ +void nit__parser_prod___AStarMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TId */; -val* var1 /* : TAssign */; +val* var /* : Token */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1834); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1627); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_assign].val; /* _n_assign on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1835); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#ABraassignMethid#init_abraassignmethid for (self: ABraassignMethid, nullable TObra, nullable TCbra, nullable TAssign) */ -void nit__parser_prod___ABraassignMethid___init_abraassignmethid(val* self, val* p0, val* p1, val* p2) { -val* var_n_obra /* var n_obra: nullable TObra */; -val* var_n_cbra /* var n_cbra: nullable TCbra */; -val* var_n_assign /* var n_assign: nullable TAssign */; -var_n_obra = p0; -var_n_cbra = p1; -var_n_assign = p2; -if (unlikely(var_n_obra == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1845); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_obra].val = var_n_obra; /* _n_obra on */ -if (var_n_obra == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1846); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on */ -if (unlikely(var_n_obra == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_obra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +/* method parser_prod#AStarstarMethid#init_astarstarmethid for (self: AStarstarMethid, nullable TStarstar) */ +void nit__parser_prod___AStarstarMethid___init_astarstarmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TStarstar */; +{ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_cbra == NULL)) { +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1847); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1635); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_cbra].val = var_n_cbra; /* _n_cbra on */ -if (var_n_cbra == NULL) { +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1848); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1636); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_cbra,self) on */ -if (unlikely(var_n_cbra == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_cbra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_assign == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1849); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___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", FILE_nit__parser_prod, 1850); -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", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; -} -} RET_LABEL:; } -/* method parser_prod#ABraassignMethid#replace_child for (self: ABraassignMethid, ANode, nullable ANode) */ -void nit__parser_prod___ABraassignMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AStarstarMethid#replace_child for (self: AStarstarMethid, ANode, nullable ANode) */ +void nit__parser_prod___AStarstarMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TObra */; +val* var /* : Token */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -1607,35 +1731,19 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TCbra */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -val* var17 /* : TAssign */; -short int var18 /* : Bool */; -short int var20 /* : Bool */; -short int var22 /* : Bool */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_obra].val; /* _n_obra on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1855); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1641); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -1648,9 +1756,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TObra */ -cltype = type_nit__TObra.color; -idtype = type_nit__TObra.id; +/* isa TStarstar */ +cltype = type_nit__TStarstar.color; +idtype = type_nit__TStarstar.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -1662,814 +1770,709 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1856); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStarstar", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1642); +fatal_exit(1); } { -nit__parser_prod___ABraassignMethid___n_obra_61d(self, var_new_child); /* Direct call parser_prod#ABraassignMethid#n_obra= on */ +nit__parser_prod___AStarstarMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AStarstarMethid#n_op= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_cbra].val; /* _n_cbra on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1859); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#AStarstarMethid#n_op= for (self: AStarstarMethid, Token) */ +void nit__parser_prod___AStarstarMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AStarstarMethid#visit_all for (self: AStarstarMethid, Visitor) */ +void nit__parser_prod___AStarstarMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1656); +fatal_exit(1); +} { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } +RET_LABEL:; } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +/* method parser_prod#ASlashMethid#init_aslashmethid for (self: ASlashMethid, nullable TSlash) */ +void nit__parser_prod___ASlashMethid___init_aslashmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TSlash */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } } -if (var8){ -/* isa TCbra */ -cltype14 = type_nit__TCbra.color; -idtype15 = type_nit__TCbra.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1664); +fatal_exit(1); } +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1665); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCbra", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1860); -show_backtrace(1); +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -{ -nit__parser_prod___ABraassignMethid___n_cbra_61d(self, var_new_child); /* Direct call parser_prod#ABraassignMethid#n_cbra= on */ } -goto RET_LABEL; -} else { +RET_LABEL:; } -var17 = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_assign].val; /* _n_assign on */ -if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1863); -show_backtrace(1); +/* method parser_prod#ASlashMethid#replace_child for (self: ASlashMethid, ANode, nullable ANode) */ +void nit__parser_prod___ASlashMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1670); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ -var22 = var17 == var_other; -var20 = var22; -goto RET_LABEL21; -RET_LABEL21:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } -var18 = var20; -goto RET_LABEL19; -RET_LABEL19:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } } -if (var18){ -/* isa TAssign */ -cltype24 = type_nit__TAssign.color; -idtype25 = type_nit__TAssign.id; +if (var1){ +/* isa TSlash */ +cltype = type_nit__TSlash.color; +idtype = type_nit__TSlash.id; if(var_new_child == NULL) { -var23 = 0; +var6 = 0; } else { -if(cltype24 >= var_new_child->type->table_size) { -var23 = 0; +if(cltype >= var_new_child->type->table_size) { +var6 = 0; } else { -var23 = var_new_child->type->type_table[cltype24] == idtype25; +var6 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var23)) { -var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1864); -show_backtrace(1); +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TSlash", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1671); +fatal_exit(1); } { -nit__parser_prod___ABraassignMethid___n_assign_61d(self, var_new_child); /* Direct call parser_prod#ABraassignMethid#n_assign= on */ +nit__parser_prod___ASlashMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#ASlashMethid#n_op= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ABraassignMethid#n_obra= for (self: ABraassignMethid, TObra) */ -void nit__parser_prod___ABraassignMethid___n_obra_61d(val* self, val* p0) { -val* var_node /* var node: TObra */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_obra].val = var_node; /* _n_obra on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ABraassignMethid#n_cbra= for (self: ABraassignMethid, TCbra) */ -void nit__parser_prod___ABraassignMethid___n_cbra_61d(val* self, val* p0) { -val* var_node /* var node: TCbra */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_cbra].val = var_node; /* _n_cbra on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ABraassignMethid#n_assign= for (self: ABraassignMethid, TAssign) */ -void nit__parser_prod___ABraassignMethid___n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; +/* method parser_prod#ASlashMethid#n_op= for (self: ASlashMethid, Token) */ +void nit__parser_prod___ASlashMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_assign].val = var_node; /* _n_assign on */ +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraassignMethid#visit_all for (self: ABraassignMethid, Visitor) */ -void nit__parser_prod___ABraassignMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ASlashMethid#visit_all for (self: ASlashMethid, Visitor) */ +void nit__parser_prod___ASlashMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TObra */; -val* var1 /* : TCbra */; -val* var2 /* : TAssign */; +val* var /* : Token */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_obra].val; /* _n_obra on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1888); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1685); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_cbra].val; /* _n_cbra on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1889); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#APercentMethid#init_apercentmethid for (self: APercentMethid, nullable TPercent) */ +void nit__parser_prod___APercentMethid___init_apercentmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TPercent */; { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -var2 = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_assign].val; /* _n_assign on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1890); -show_backtrace(1); } -{ -nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1693); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1694); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} } RET_LABEL:; } -/* method parser_prod#ASignature#init_asignature for (self: ASignature, nullable TOpar, Collection[Object], nullable TCpar, nullable AType) */ -void nit__parser_prod___ASignature___init_asignature(val* self, val* p0, val* p1, val* p2, val* p3) { -val* var_n_opar /* var n_opar: nullable TOpar */; -val* var_n_params /* var n_params: Collection[Object] */; -val* var_n_cpar /* var n_cpar: nullable TCpar */; -val* var_n_type /* var n_type: nullable AType */; -val* var /* : null */; +/* method parser_prod#APercentMethid#replace_child for (self: APercentMethid, ANode, nullable ANode) */ +void nit__parser_prod___APercentMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; short int var5 /* : Bool */; -val* var7 /* : ANodes[AParam] */; -val* var9 /* : ANodes[AParam] */; -val* var10 /* : null */; -short int var11 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -val* var17 /* : null */; -short int var18 /* : Bool */; -short int var19 /* : Bool */; -short int var21 /* : Bool */; -short int var22 /* : Bool */; -var_n_opar = p0; -var_n_params = p1; -var_n_cpar = p2; -var_n_type = p3; -self->attrs[COLOR_nit__parser_nodes__ASignature___n_opar].val = var_n_opar; /* _n_opar on */ -var = NULL; -if (var_n_opar == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1699); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_n_opar,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_n_opar->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_opar, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(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 */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var1 = var2; } -if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_opar,self) on */ -var_n_opar->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } } +if (var1){ +/* isa TPercent */ +cltype = type_nit__TPercent.color; +idtype = type_nit__TPercent.id; +if(var_new_child == NULL) { +var6 = 0; } else { +if(cltype >= var_new_child->type->table_size) { +var6 = 0; +} else { +var6 = var_new_child->type->type_table[cltype] == idtype; } -{ -{ /* Inline parser_nodes#ASignature#n_params (self) on */ -var9 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_params].val; /* _n_params on */ -if (unlikely(var9 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1506); -show_backtrace(1); -} -var7 = var9; -RET_LABEL8:(void)0; } +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TPercent", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1700); +fatal_exit(1); } { -nit___nit__ANodes___unsafe_add_all(var7, var_n_params); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ +nit__parser_prod___APercentMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#APercentMethid#n_op= on */ } -self->attrs[COLOR_nit__parser_nodes__ASignature___n_cpar].val = var_n_cpar; /* _n_cpar on */ -var10 = NULL; -if (var_n_cpar == NULL) { -var11 = 0; /* is null */ +goto RET_LABEL; } else { -var11 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_cpar,var10) on */ -var_other = var10; -{ -var14 = ((short int (*)(val* self, val* p0))(var_n_cpar->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_cpar, var_other) /* == on */; -} -var15 = !var14; -var12 = var15; -goto RET_LABEL13; -RET_LABEL13:(void)0; } -var11 = var12; +RET_LABEL:; } -if (var11){ +/* method parser_prod#APercentMethid#n_op= for (self: APercentMethid, Token) */ +void nit__parser_prod___APercentMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_n_cpar,self) on */ -var_n_cpar->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL16:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -} else { +RET_LABEL:; } -self->attrs[COLOR_nit__parser_nodes__ASignature___n_type].val = var_n_type; /* _n_type on */ -var17 = NULL; -if (var_n_type == NULL) { -var18 = 0; /* is null */ -} else { -var18 = 1; /* arg is null and recv is not */ +/* method parser_prod#APercentMethid#visit_all for (self: APercentMethid, Visitor) */ +void nit__parser_prod___APercentMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1714); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_n_type,var17) on */ -var_other = var17; { -var21 = ((short int (*)(val* self, val* p0))(var_n_type->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_type, var_other) /* == on */; -} -var22 = !var21; -var19 = var22; -goto RET_LABEL20; -RET_LABEL20:(void)0; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var18 = var19; +RET_LABEL:; } -if (var18){ +/* method parser_prod#AEqMethid#init_aeqmethid for (self: AEqMethid, nullable TEq) */ +void nit__parser_prod___AEqMethid___init_aeqmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TEq */; { -{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ -var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL23:(void)0; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} } +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1722); +fatal_exit(1); } +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1723); +fatal_exit(1); } else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} } RET_LABEL:; } -/* method parser_prod#ASignature#replace_child for (self: ASignature, ANode, nullable ANode) */ -void nit__parser_prod___ASignature___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AEqMethid#replace_child for (self: AEqMethid, ANode, nullable ANode) */ +void nit__parser_prod___AEqMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : nullable TOpar */; +val* var /* : Token */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; short int var6 /* : Bool */; -short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : ANodes[AParam] */; -val* var10 /* : ANodes[AParam] */; -short int var11 /* : Bool */; -val* var12 /* : nullable TCpar */; -short int var13 /* : Bool */; -short int var14 /* : Bool */; -short int var16 /* : Bool */; -short int var18 /* : Bool */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; -const char* var_class_name22; -val* var23 /* : nullable AType */; -short int var24 /* : Bool */; -short int var25 /* : Bool */; -short int var27 /* : Bool */; -short int var29 /* : Bool */; -short int var30 /* : Bool */; -int cltype31; -int idtype32; -const char* var_class_name33; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASignature___n_opar].val; /* _n_opar on */ -if (var == NULL) { -var1 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1728); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var6 = var == var_other; -var4 = var6; -goto RET_LABEL5; -RET_LABEL5:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; } if (var1){ -/* isa nullable TOpar */ -cltype = type_nullable__nit__TOpar.color; -idtype = type_nullable__nit__TOpar.id; +/* isa TEq */ +cltype = type_nit__TEq.color; +idtype = type_nit__TEq.id; if(var_new_child == NULL) { -var7 = 1; +var6 = 0; } else { if(cltype >= var_new_child->type->table_size) { -var7 = 0; +var6 = 0; } else { -var7 = var_new_child->type->type_table[cltype] == idtype; +var6 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var7)) { +if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TOpar", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1913); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TEq", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1729); +fatal_exit(1); } { -nit__parser_prod___ASignature___n_opar_61d(self, var_new_child); /* Direct call parser_prod#ASignature#n_opar= on */ +nit__parser_prod___AEqMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AEqMethid#n_op= on */ } goto RET_LABEL; } else { } +RET_LABEL:; +} +/* method parser_prod#AEqMethid#n_op= for (self: AEqMethid, Token) */ +void nit__parser_prod___AEqMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ASignature#n_params (self) on */ -var10 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_params].val; /* _n_params on */ -if (unlikely(var10 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1506); -show_backtrace(1); +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -var8 = var10; -RET_LABEL9:(void)0; } +RET_LABEL:; +} +/* method parser_prod#AEqMethid#visit_all for (self: AEqMethid, Visitor) */ +void nit__parser_prod___AEqMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1743); +fatal_exit(1); } { -var11 = nit___nit__ANodes___replace_child(var8, var_old_child, var_new_child); +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -if (var11){ -goto RET_LABEL; -} else { +RET_LABEL:; } -var12 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_cpar].val; /* _n_cpar on */ -if (var12 == NULL) { -var13 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var12,var_old_child) on */ -var_other = var_old_child; +/* method parser_prod#ANeMethid#init_anemethid for (self: ANeMethid, nullable TNe) */ +void nit__parser_prod___ANeMethid___init_anemethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TNe */; { -{ /* Inline kernel#Object#is_same_instance (var12,var_other) on */ -var18 = var12 == var_other; -var16 = var18; -goto RET_LABEL17; -RET_LABEL17:(void)0; -} +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -var14 = var16; -goto RET_LABEL15; -RET_LABEL15:(void)0; } -var13 = var14; +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1751); +fatal_exit(1); } -if (var13){ -/* isa nullable TCpar */ -cltype20 = type_nullable__nit__TCpar.color; -idtype21 = type_nullable__nit__TCpar.id; -if(var_new_child == NULL) { -var19 = 1; -} else { -if(cltype20 >= var_new_child->type->table_size) { -var19 = 0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1752); +fatal_exit(1); } else { -var19 = var_new_child->type->type_table[cltype20] == idtype21; +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -if (unlikely(!var19)) { -var_class_name22 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TCpar", var_class_name22); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1918); -show_backtrace(1); } -{ -nit__parser_prod___ASignature___n_cpar_61d(self, var_new_child); /* Direct call parser_prod#ASignature#n_cpar= on */ +RET_LABEL:; } -goto RET_LABEL; -} else { +/* method parser_prod#ANeMethid#replace_child for (self: ANeMethid, ANode, nullable ANode) */ +void nit__parser_prod___ANeMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1757); +fatal_exit(1); } -var23 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_type].val; /* _n_type on */ -if (var23 == NULL) { -var24 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var23,var_old_child) on */ +{ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var23,var_other) on */ -var29 = var23 == var_other; -var27 = var29; -goto RET_LABEL28; -RET_LABEL28:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } -var25 = var27; -goto RET_LABEL26; -RET_LABEL26:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var24 = var25; } -if (var24){ -/* isa nullable AType */ -cltype31 = type_nullable__nit__AType.color; -idtype32 = type_nullable__nit__AType.id; +if (var1){ +/* isa TNe */ +cltype = type_nit__TNe.color; +idtype = type_nit__TNe.id; if(var_new_child == NULL) { -var30 = 1; +var6 = 0; } else { -if(cltype31 >= var_new_child->type->table_size) { -var30 = 0; +if(cltype >= var_new_child->type->table_size) { +var6 = 0; } else { -var30 = var_new_child->type->type_table[cltype31] == idtype32; +var6 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var30)) { -var_class_name33 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name33); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1922); -show_backtrace(1); +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TNe", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1758); +fatal_exit(1); } { -nit__parser_prod___ASignature___n_type_61d(self, var_new_child); /* Direct call parser_prod#ASignature#n_type= on */ +nit__parser_prod___ANeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#ANeMethid#n_op= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ASignature#n_opar= for (self: ASignature, nullable TOpar) */ -void nit__parser_prod___ASignature___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 */; +/* method parser_prod#ANeMethid#n_op= for (self: ANeMethid, Token) */ +void nit__parser_prod___ANeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASignature___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; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +RET_LABEL:; +} +/* method parser_prod#ANeMethid#visit_all for (self: ANeMethid, Visitor) */ +void nit__parser_prod___ANeMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1772); +fatal_exit(1); } -if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } +RET_LABEL:; } -} else { +/* method parser_prod#ALeMethid#init_alemethid for (self: ALeMethid, nullable TLe) */ +void nit__parser_prod___ALeMethid___init_alemethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TLe */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -RET_LABEL:; } -/* method parser_prod#ASignature#n_cpar= for (self: ASignature, nullable TCpar) */ -void nit__parser_prod___ASignature___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 */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASignature___n_cpar].val = var_node; /* _n_cpar on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1780); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1781); +fatal_exit(1); } else { -var1 = 1; /* arg is null and recv is not */ +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; -{ -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +RET_LABEL:; } -if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; -} -} -} else { -} -RET_LABEL:; -} -/* method parser_prod#ASignature#n_type= for (self: ASignature, nullable AType) */ -void nit__parser_prod___ASignature___n_type_61d(val* self, val* p0) { -val* var_node /* var node: nullable AType */; -val* var /* : null */; +/* method parser_prod#ALeMethid#replace_child for (self: ALeMethid, ANode, nullable ANode) */ +void nit__parser_prod___ALeMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASignature___n_type].val = var_node; /* _n_type on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; -{ -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1786); +fatal_exit(1); } -if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; -} -} -} else { -} -RET_LABEL:; -} -/* method parser_prod#ASignature#visit_all for (self: ASignature, Visitor) */ -void nit__parser_prod___ASignature___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : nullable TOpar */; -val* var1 /* : ANodes[AParam] */; -val* var3 /* : ANodes[AParam] */; -val* var4 /* : nullable TCpar */; -val* var5 /* : nullable AType */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASignature___n_opar].val; /* _n_opar on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ +var_other = var_old_child; { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -{ -{ /* Inline parser_nodes#ASignature#n_params (self) on */ -var3 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_params].val; /* _n_params on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1506); -show_backtrace(1); } var1 = var3; +goto RET_LABEL2; RET_LABEL2:(void)0; } } -{ -nit___nit__ANodes___visit_all(var1, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ -} -var4 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_cpar].val; /* _n_cpar on */ -{ -nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var5 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_type].val; /* _n_type on */ -{ -nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#AParam#init_aparam for (self: AParam, nullable TId, nullable AType, nullable TDotdotdot, nullable AAnnotations) */ -void nit__parser_prod___AParam___init_aparam(val* self, val* p0, val* p1, val* p2, val* p3) { -val* var_n_id /* var n_id: nullable TId */; -val* var_n_type /* var n_type: nullable AType */; -val* var_n_dotdotdot /* var n_dotdotdot: nullable TDotdotdot */; -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 */; -val* var8 /* : null */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -val* var15 /* : null */; -short int var16 /* : Bool */; -short int var17 /* : Bool */; -short int var19 /* : Bool */; -short int var20 /* : Bool */; -var_n_id = p0; -var_n_type = p1; -var_n_dotdotdot = p2; -var_n_annotations = p3; -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1960); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AParam___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1961); -show_backtrace(1); +if (var1){ +/* isa TLe */ +cltype = type_nit__TLe.color; +idtype = type_nit__TLe.id; +if(var_new_child == NULL) { +var6 = 0; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -self->attrs[COLOR_nit__parser_nodes__AParam___n_type].val = var_n_type; /* _n_type on */ -var = NULL; -if (var_n_type == NULL) { -var2 = 0; /* is null */ +if(cltype >= var_new_child->type->table_size) { +var6 = 0; } else { -var2 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_type,var) on */ -var_other = var; -{ -var5 = ((short int (*)(val* self, val* p0))(var_n_type->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_type, var_other) /* == on */; +var6 = var_new_child->type->type_table[cltype] == idtype; } -var6 = !var5; -var3 = var6; -goto RET_LABEL4; -RET_LABEL4:(void)0; } -var2 = var3; +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLe", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1787); +fatal_exit(1); } -if (var2){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ -var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL7:(void)0; -} +nit__parser_prod___ALeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#ALeMethid#n_op= on */ } +goto RET_LABEL; } else { } -self->attrs[COLOR_nit__parser_nodes__AParam___n_dotdotdot].val = var_n_dotdotdot; /* _n_dotdotdot on */ -var8 = NULL; -if (var_n_dotdotdot == NULL) { -var9 = 0; /* is null */ -} else { -var9 = 1; /* arg is null and recv is not */ +RET_LABEL:; } -if (0) { -{ /* Inline kernel#Object#!= (var_n_dotdotdot,var8) on */ -var_other = var8; +/* method parser_prod#ALeMethid#n_op= for (self: ALeMethid, Token) */ +void nit__parser_prod___ALeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -var12 = ((short int (*)(val* self, val* p0))(var_n_dotdotdot->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_dotdotdot, var_other) /* == on */; -} -var13 = !var12; -var10 = var13; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -var9 = var10; } -if (var9){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_dotdotdot,self) on */ -var_n_dotdotdot->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL14:(void)0; +RET_LABEL:; } +/* method parser_prod#ALeMethid#visit_all for (self: ALeMethid, Visitor) */ +void nit__parser_prod___ALeMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1801); +fatal_exit(1); } -} else { +{ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ -var15 = NULL; -if (var_n_annotations == NULL) { -var16 = 0; /* is null */ -} else { -var16 = 1; /* arg is null and recv is not */ +RET_LABEL:; } -if (0) { -{ /* Inline kernel#Object#!= (var_n_annotations,var15) on */ -var_other = var15; +/* method parser_prod#AGeMethid#init_agemethid for (self: AGeMethid, nullable TGe) */ +void nit__parser_prod___AGeMethid___init_agemethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TGe */; { -var19 = ((short int (*)(val* self, val* p0))(var_n_annotations->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -var20 = !var19; -var17 = var20; -goto RET_LABEL18; -RET_LABEL18:(void)0; } -var16 = var17; +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1809); +fatal_exit(1); } -if (var16){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ -var_n_annotations->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL21:(void)0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1810); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -} else { } RET_LABEL:; } -/* method parser_prod#AParam#replace_child for (self: AParam, ANode, nullable ANode) */ -void nit__parser_prod___AParam___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AGeMethid#replace_child for (self: AGeMethid, ANode, nullable ANode) */ +void nit__parser_prod___AGeMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TId */; +val* var /* : Token */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -2478,46 +2481,19 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : nullable AType */; -short int var8 /* : Bool */; -short int var9 /* : Bool */; -short int var11 /* : Bool */; -short int var13 /* : Bool */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -const char* var_class_name17; -val* var18 /* : nullable TDotdotdot */; -short int var19 /* : Bool */; -short int var20 /* : Bool */; -short int var22 /* : Bool */; -short int var24 /* : Bool */; -short int var25 /* : Bool */; -int cltype26; -int idtype27; -const char* var_class_name28; -val* var29 /* : nullable AAnnotations */; -short int var30 /* : Bool */; -short int var31 /* : Bool */; -short int var33 /* : Bool */; -short int var35 /* : Bool */; -short int var36 /* : Bool */; -int cltype37; -int idtype38; -const char* var_class_name39; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AParam___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1972); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1815); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -2530,9 +2506,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TId */ -cltype = type_nit__TId.color; -idtype = type_nit__TId.id; +/* isa TGe */ +cltype = type_nit__TGe.color; +idtype = type_nit__TGe.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -2544,840 +2520,709 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1973); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGe", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1816); +fatal_exit(1); } { -nit__parser_prod___AParam___n_id_61d(self, var_new_child); /* Direct call parser_prod#AParam#n_id= on */ +nit__parser_prod___AGeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AGeMethid#n_op= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AParam___n_type].val; /* _n_type on */ -if (var7 == NULL) { -var8 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var13 = var7 == var_other; -var11 = var13; -goto RET_LABEL12; -RET_LABEL12:(void)0; -} -} -var9 = var11; -goto RET_LABEL10; -RET_LABEL10:(void)0; +RET_LABEL:; } -var8 = var9; +/* method parser_prod#AGeMethid#n_op= for (self: AGeMethid, Token) */ +void nit__parser_prod___AGeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -if (var8){ -/* isa nullable AType */ -cltype15 = type_nullable__nit__AType.color; -idtype16 = type_nullable__nit__AType.id; -if(var_new_child == NULL) { -var14 = 1; -} else { -if(cltype15 >= var_new_child->type->table_size) { -var14 = 0; -} else { -var14 = var_new_child->type->type_table[cltype15] == idtype16; } +RET_LABEL:; } -if (unlikely(!var14)) { -var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name17); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1977); -show_backtrace(1); +/* method parser_prod#AGeMethid#visit_all for (self: AGeMethid, Visitor) */ +void nit__parser_prod___AGeMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1830); +fatal_exit(1); } { -nit__parser_prod___AParam___n_type_61d(self, var_new_child); /* Direct call parser_prod#AParam#n_type= on */ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -goto RET_LABEL; -} else { +RET_LABEL:; } -var18 = self->attrs[COLOR_nit__parser_nodes__AParam___n_dotdotdot].val; /* _n_dotdotdot on */ -if (var18 == NULL) { -var19 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var18,var_old_child) on */ -var_other = var_old_child; +/* method parser_prod#ALtMethid#init_altmethid for (self: ALtMethid, nullable TLt) */ +void nit__parser_prod___ALtMethid___init_altmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TLt */; { -{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ -var24 = var18 == var_other; -var22 = var24; -goto RET_LABEL23; -RET_LABEL23:(void)0; -} +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -var20 = var22; -goto RET_LABEL21; -RET_LABEL21:(void)0; } -var19 = var20; +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1838); +fatal_exit(1); } -if (var19){ -/* isa nullable TDotdotdot */ -cltype26 = type_nullable__nit__TDotdotdot.color; -idtype27 = type_nullable__nit__TDotdotdot.id; -if(var_new_child == NULL) { -var25 = 1; -} else { -if(cltype26 >= var_new_child->type->table_size) { -var25 = 0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1839); +fatal_exit(1); } else { -var25 = var_new_child->type->type_table[cltype26] == idtype27; +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -if (unlikely(!var25)) { -var_class_name28 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TDotdotdot", var_class_name28); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1981); -show_backtrace(1); } -{ -nit__parser_prod___AParam___n_dotdotdot_61d(self, var_new_child); /* Direct call parser_prod#AParam#n_dotdotdot= on */ +RET_LABEL:; } -goto RET_LABEL; -} else { +/* method parser_prod#ALtMethid#replace_child for (self: ALtMethid, ANode, nullable ANode) */ +void nit__parser_prod___ALtMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1844); +fatal_exit(1); } -var29 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ -if (var29 == NULL) { -var30 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var29,var_old_child) on */ +{ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var29,var_other) on */ -var35 = var29 == var_other; -var33 = var35; -goto RET_LABEL34; -RET_LABEL34:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } -var31 = var33; -goto RET_LABEL32; -RET_LABEL32:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var30 = var31; } -if (var30){ -/* isa nullable AAnnotations */ -cltype37 = type_nullable__nit__AAnnotations.color; -idtype38 = type_nullable__nit__AAnnotations.id; +if (var1){ +/* isa TLt */ +cltype = type_nit__TLt.color; +idtype = type_nit__TLt.id; if(var_new_child == NULL) { -var36 = 1; +var6 = 0; } else { -if(cltype37 >= var_new_child->type->table_size) { -var36 = 0; +if(cltype >= var_new_child->type->table_size) { +var6 = 0; } else { -var36 = var_new_child->type->type_table[cltype37] == idtype38; +var6 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var36)) { -var_class_name39 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name39); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1985); -show_backtrace(1); +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLt", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1845); +fatal_exit(1); } { -nit__parser_prod___AParam___nit__parser_nodes__Prod__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AParam#n_annotations= on */ +nit__parser_prod___ALtMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#ALtMethid#n_op= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AParam#n_id= for (self: AParam, TId) */ -void nit__parser_prod___AParam___n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#ALtMethid#n_op= for (self: ALtMethid, Token) */ +void nit__parser_prod___ALtMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AParam___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AParam#n_type= for (self: AParam, nullable AType) */ -void nit__parser_prod___AParam___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 */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AParam___n_type].val = var_node; /* _n_type on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +/* method parser_prod#ALtMethid#visit_all for (self: ALtMethid, Visitor) */ +void nit__parser_prod___ALtMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1859); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = var2; +RET_LABEL:; } -if (var1){ +/* method parser_prod#AGtMethid#init_agtmethid for (self: AGtMethid, nullable TGt) */ +void nit__parser_prod___AGtMethid___init_agtmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TGt */; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} } +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1867); +fatal_exit(1); } +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1868); +fatal_exit(1); } else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} } RET_LABEL:; } -/* method parser_prod#AParam#n_dotdotdot= for (self: AParam, nullable TDotdotdot) */ -void nit__parser_prod___AParam___n_dotdotdot_61d(val* self, val* p0) { -val* var_node /* var node: nullable TDotdotdot */; -val* var /* : null */; +/* method parser_prod#AGtMethid#replace_child for (self: AGtMethid, ANode, nullable ANode) */ +void nit__parser_prod___AGtMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AParam___n_dotdotdot].val = var_node; /* _n_dotdotdot on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1873); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +{ /* Inline kernel#Object#== (var,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} } if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +/* isa TGt */ +cltype = type_nit__TGt.color; +idtype = type_nit__TGt.id; +if(var_new_child == NULL) { +var6 = 0; +} else { +if(cltype >= var_new_child->type->table_size) { +var6 = 0; +} else { +var6 = var_new_child->type->type_table[cltype] == idtype; +} } +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGt", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1874); +fatal_exit(1); +} +{ +nit__parser_prod___AGtMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AGtMethid#n_op= on */ } +goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AParam#n_annotations= for (self: AParam, nullable AAnnotations) */ -void nit__parser_prod___AParam___nit__parser_nodes__Prod__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 */; +/* method parser_prod#AGtMethid#n_op= for (self: AGtMethid, Token) */ +void nit__parser_prod___AGtMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__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; -{ -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; -} +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -} else { } RET_LABEL:; } -/* method parser_prod#AParam#visit_all for (self: AParam, Visitor) */ -void nit__parser_prod___AParam___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AGtMethid#visit_all for (self: AGtMethid, Visitor) */ +void nit__parser_prod___AGtMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TId */; -val* var1 /* : nullable AType */; -val* var2 /* : nullable TDotdotdot */; -val* var3 /* : nullable AAnnotations */; +val* var /* : Token */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AParam___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2014); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1888); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AParam___n_type].val; /* _n_type on */ -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +RET_LABEL:; } -var2 = self->attrs[COLOR_nit__parser_nodes__AParam___n_dotdotdot].val; /* _n_dotdotdot on */ +/* method parser_prod#ALlMethid#init_allmethid for (self: ALlMethid, nullable TLl) */ +void nit__parser_prod___ALlMethid___init_allmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TLl */; { -nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1896); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1897); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -var3 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AType#init_atype for (self: AType, nullable TKwnullable, nullable TClassid, Collection[Object], nullable AAnnotations) */ -void nit__parser_prod___AType___init_atype(val* self, val* p0, val* p1, val* p2, val* p3) { -val* var_n_kwnullable /* var n_kwnullable: nullable TKwnullable */; -val* var_n_id /* var n_id: nullable TClassid */; -val* var_n_types /* var n_types: Collection[Object] */; -val* var_n_annotations /* var n_annotations: nullable AAnnotations */; -val* var /* : null */; +/* method parser_prod#ALlMethid#replace_child for (self: ALlMethid, ANode, nullable ANode) */ +void nit__parser_prod___ALlMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; short int var5 /* : Bool */; -val* var8 /* : ANodes[AType] */; -val* var10 /* : ANodes[AType] */; -val* var11 /* : null */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -short int var15 /* : Bool */; -short int var16 /* : Bool */; -var_n_kwnullable = p0; -var_n_id = p1; -var_n_types = p2; -var_n_annotations = p3; -self->attrs[COLOR_nit__parser_nodes__AType___n_kwnullable].val = var_n_kwnullable; /* _n_kwnullable on */ -var = NULL; -if (var_n_kwnullable == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1902); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_n_kwnullable,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_n_kwnullable->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwnullable, var_other) /* == on */; +{ /* Inline kernel#Object#== (var,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} } if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_kwnullable,self) on */ -var_n_kwnullable->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +/* isa TLl */ +cltype = type_nit__TLl.color; +idtype = type_nit__TLl.id; +if(var_new_child == NULL) { +var6 = 0; +} else { +if(cltype >= var_new_child->type->table_size) { +var6 = 0; +} else { +var6 = var_new_child->type->type_table[cltype] == idtype; } } -} else { +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLl", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1903); +fatal_exit(1); } -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2030); -show_backtrace(1); +{ +nit__parser_prod___ALlMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#ALlMethid#n_op= on */ } -self->attrs[COLOR_nit__parser_nodes__AType___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2031); -show_backtrace(1); +goto RET_LABEL; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL7:(void)0; } +RET_LABEL:; } +/* method parser_prod#ALlMethid#n_op= for (self: ALlMethid, Token) */ +void nit__parser_prod___ALlMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#AType#n_types (self) on */ -var10 = self->attrs[COLOR_nit__parser_nodes__AType___n_types].val; /* _n_types on */ -if (unlikely(var10 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1539); -show_backtrace(1); +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -var8 = var10; -RET_LABEL9:(void)0; } +RET_LABEL:; +} +/* method parser_prod#ALlMethid#visit_all for (self: ALlMethid, Visitor) */ +void nit__parser_prod___ALlMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1917); +fatal_exit(1); } { -nit___nit__ANodes___unsafe_add_all(var8, var_n_types); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -self->attrs[COLOR_nit__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 */ +RET_LABEL:; } -if (0) { -{ /* Inline kernel#Object#!= (var_n_annotations,var11) on */ -var_other = var11; +/* method parser_prod#AGgMethid#init_aggmethid for (self: AGgMethid, nullable TGg) */ +void nit__parser_prod___AGgMethid___init_aggmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TGg */; { -var15 = ((short int (*)(val* self, val* p0))(var_n_annotations->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -var16 = !var15; -var13 = var16; -goto RET_LABEL14; -RET_LABEL14:(void)0; } -var12 = var13; +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1925); +fatal_exit(1); } -if (var12){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ -var_n_annotations->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL17:(void)0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1926); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -} else { } RET_LABEL:; } -/* method parser_prod#AType#replace_child for (self: AType, ANode, nullable ANode) */ -void nit__parser_prod___AType___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AGgMethid#replace_child for (self: AGgMethid, ANode, nullable ANode) */ +void nit__parser_prod___AGgMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : nullable TKwnullable */; +val* var /* : Token */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; short int var6 /* : Bool */; -short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : TClassid */; -short int var9 /* : Bool */; -short int var11 /* : Bool */; -short int var13 /* : Bool */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -const char* var_class_name17; -val* var18 /* : ANodes[AType] */; -val* var20 /* : ANodes[AType] */; -short int var21 /* : Bool */; -val* var22 /* : nullable AAnnotations */; -short int var23 /* : Bool */; -short int var24 /* : Bool */; -short int var26 /* : Bool */; -short int var28 /* : Bool */; -short int var29 /* : Bool */; -int cltype30; -int idtype31; -const char* var_class_name32; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AType___n_kwnullable].val; /* _n_kwnullable on */ -if (var == NULL) { -var1 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1931); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var6 = var == var_other; -var4 = var6; -goto RET_LABEL5; -RET_LABEL5:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; } if (var1){ -/* isa nullable TKwnullable */ -cltype = type_nullable__nit__TKwnullable.color; -idtype = type_nullable__nit__TKwnullable.id; +/* isa TGg */ +cltype = type_nit__TGg.color; +idtype = type_nit__TGg.id; if(var_new_child == NULL) { -var7 = 1; +var6 = 0; } else { if(cltype >= var_new_child->type->table_size) { -var7 = 0; +var6 = 0; } else { -var7 = var_new_child->type->type_table[cltype] == idtype; +var6 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var7)) { +if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwnullable", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2040); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGg", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1932); +fatal_exit(1); } { -nit__parser_prod___AType___n_kwnullable_61d(self, var_new_child); /* Direct call parser_prod#AType#n_kwnullable= on */ +nit__parser_prod___AGgMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AGgMethid#n_op= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_nit__parser_nodes__AType___n_id].val; /* _n_id on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2043); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#AGgMethid#n_op= for (self: AGgMethid, Token) */ +void nit__parser_prod___AGgMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ -var13 = var8 == var_other; -var11 = var13; -goto RET_LABEL12; -RET_LABEL12:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -var9 = var11; -goto RET_LABEL10; -RET_LABEL10:(void)0; -} -} -if (var9){ -/* isa TClassid */ -cltype15 = type_nit__TClassid.color; -idtype16 = type_nit__TClassid.id; -if(var_new_child == NULL) { -var14 = 0; -} else { -if(cltype15 >= var_new_child->type->table_size) { -var14 = 0; -} else { -var14 = var_new_child->type->type_table[cltype15] == idtype16; -} -} -if (unlikely(!var14)) { -var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TClassid", var_class_name17); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2044); -show_backtrace(1); -} -{ -nit__parser_prod___AType___n_id_61d(self, var_new_child); /* Direct call parser_prod#AType#n_id= on */ -} -goto RET_LABEL; -} else { -} -{ -{ /* Inline parser_nodes#AType#n_types (self) on */ -var20 = self->attrs[COLOR_nit__parser_nodes__AType___n_types].val; /* _n_types on */ -if (unlikely(var20 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1539); -show_backtrace(1); -} -var18 = var20; -RET_LABEL19:(void)0; +RET_LABEL:; } +/* method parser_prod#AGgMethid#visit_all for (self: AGgMethid, Visitor) */ +void nit__parser_prod___AGgMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1946); +fatal_exit(1); } { -var21 = nit___nit__ANodes___replace_child(var18, var_old_child, var_new_child); +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -if (var21){ -goto RET_LABEL; -} else { +RET_LABEL:; } -var22 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ -if (var22 == NULL) { -var23 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var22,var_old_child) on */ -var_other = var_old_child; +/* method parser_prod#AStarshipMethid#init_astarshipmethid for (self: AStarshipMethid, nullable TStarship) */ +void nit__parser_prod___AStarshipMethid___init_astarshipmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TStarship */; { -{ /* Inline kernel#Object#is_same_instance (var22,var_other) on */ -var28 = var22 == var_other; -var26 = var28; -goto RET_LABEL27; -RET_LABEL27:(void)0; -} +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -var24 = var26; -goto RET_LABEL25; -RET_LABEL25:(void)0; } -var23 = var24; +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1954); +fatal_exit(1); } -if (var23){ -/* isa nullable AAnnotations */ -cltype30 = type_nullable__nit__AAnnotations.color; -idtype31 = type_nullable__nit__AAnnotations.id; -if(var_new_child == NULL) { -var29 = 1; -} else { -if(cltype30 >= var_new_child->type->table_size) { -var29 = 0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1955); +fatal_exit(1); } else { -var29 = var_new_child->type->type_table[cltype30] == idtype31; -} -} -if (unlikely(!var29)) { -var_class_name32 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name32); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2049); -show_backtrace(1); +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -{ -nit__parser_prod___AType___nit__parser_nodes__Prod__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AType#n_annotations= on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -goto RET_LABEL; -} else { } RET_LABEL:; } -/* method parser_prod#AType#n_kwnullable= for (self: AType, nullable TKwnullable) */ -void nit__parser_prod___AType___n_kwnullable_61d(val* self, val* p0) { -val* var_node /* var node: nullable TKwnullable */; -val* var /* : null */; +/* method parser_prod#AStarshipMethid#replace_child for (self: AStarshipMethid, ANode, nullable ANode) */ +void nit__parser_prod___AStarshipMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AType___n_kwnullable].val = var_node; /* _n_kwnullable on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1960); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +{ /* Inline kernel#Object#== (var,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var1 = var2; } -if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } } +if (var1){ +/* isa TStarship */ +cltype = type_nit__TStarship.color; +idtype = type_nit__TStarship.id; +if(var_new_child == NULL) { +var6 = 0; +} else { +if(cltype >= var_new_child->type->table_size) { +var6 = 0; } else { +var6 = var_new_child->type->type_table[cltype] == idtype; } -RET_LABEL:; } -/* method parser_prod#AType#n_id= for (self: AType, TClassid) */ -void nit__parser_prod___AType___n_id_61d(val* self, val* p0) { -val* var_node /* var node: TClassid */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AType___n_id].val = var_node; /* _n_id on */ +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStarship", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1961); +fatal_exit(1); +} { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +nit__parser_prod___AStarshipMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AStarshipMethid#n_op= on */ } +goto RET_LABEL; +} else { } RET_LABEL:; } -/* method parser_prod#AType#n_annotations= for (self: AType, nullable AAnnotations) */ -void nit__parser_prod___AType___nit__parser_nodes__Prod__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 */; +/* method parser_prod#AStarshipMethid#n_op= for (self: AStarshipMethid, Token) */ +void nit__parser_prod___AStarshipMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__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; -{ -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; -} +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -} else { } RET_LABEL:; } -/* method parser_prod#AType#visit_all for (self: AType, Visitor) */ -void nit__parser_prod___AType___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AStarshipMethid#visit_all for (self: AStarshipMethid, Visitor) */ +void nit__parser_prod___AStarshipMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : nullable TKwnullable */; -val* var1 /* : TClassid */; -val* var2 /* : ANodes[AType] */; -val* var4 /* : ANodes[AType] */; -val* var5 /* : nullable AAnnotations */; +val* var /* : Token */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AType___n_kwnullable].val; /* _n_kwnullable on */ -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_nit__parser_nodes__AType___n_id].val; /* _n_id on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2074); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1975); +fatal_exit(1); } { -{ /* Inline parser_nodes#AType#n_types (self) on */ -var4 = self->attrs[COLOR_nit__parser_nodes__AType___n_types].val; /* _n_types on */ -if (unlikely(var4 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1539); -show_backtrace(1); -} -var2 = var4; -RET_LABEL3:(void)0; -} +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -{ -nit___nit__ANodes___visit_all(var2, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ +RET_LABEL:; } -var5 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +/* method parser_prod#APipeMethid#init_apipemethid for (self: APipeMethid, nullable TPipe) */ +void nit__parser_prod___APipeMethid___init_apipemethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TPipe */; { -nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -RET_LABEL:; } -/* method parser_prod#ALabel#init_alabel for (self: ALabel, nullable TKwlabel, nullable TId) */ -void nit__parser_prod___ALabel___init_alabel(val* self, val* p0, val* p1) { -val* var_n_kwlabel /* var n_kwlabel: nullable TKwlabel */; -val* var_n_id /* var n_id: nullable TId */; -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 */; -var_n_kwlabel = p0; -var_n_id = p1; -if (unlikely(var_n_kwlabel == NULL)) { +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2085); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1983); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ALabel___n_kwlabel].val = var_n_kwlabel; /* _n_kwlabel on */ -if (var_n_kwlabel == NULL) { +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2086); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1984); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwlabel,self) on */ -if (unlikely(var_n_kwlabel == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwlabel->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -self->attrs[COLOR_nit__parser_nodes__ALabel___n_id].val = var_n_id; /* _n_id on */ -var = NULL; -if (var_n_id == NULL) { -var2 = 0; /* is null */ -} else { -var2 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_id,var) on */ -var_other = var; -{ -var5 = ((short int (*)(val* self, val* p0))(var_n_id->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_id, var_other) /* == on */; -} -var6 = !var5; -var3 = var6; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} -var2 = var3; -} -if (var2){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL7:(void)0; +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -} else { } RET_LABEL:; } -/* method parser_prod#ALabel#replace_child for (self: ALabel, ANode, nullable ANode) */ -void nit__parser_prod___ALabel___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#APipeMethid#replace_child for (self: APipeMethid, ANode, nullable ANode) */ +void nit__parser_prod___APipeMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwlabel */; +val* var /* : Token */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -3386,28 +3231,19 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : nullable TId */; -short int var8 /* : Bool */; -short int var9 /* : Bool */; -short int var11 /* : Bool */; -short int var13 /* : Bool */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -const char* var_class_name17; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ALabel___n_kwlabel].val; /* _n_kwlabel on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwlabel"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2093); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1989); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -3420,9 +3256,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwlabel */ -cltype = type_nit__TKwlabel.color; -idtype = type_nit__TKwlabel.id; +/* isa TPipe */ +cltype = type_nit__TPipe.color; +idtype = type_nit__TPipe.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -3434,552 +3270,482 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwlabel", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2094); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TPipe", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 1990); +fatal_exit(1); } { -nit__parser_prod___ALabel___n_kwlabel_61d(self, var_new_child); /* Direct call parser_prod#ALabel#n_kwlabel= on */ +nit__parser_prod___APipeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#APipeMethid#n_op= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ALabel___n_id].val; /* _n_id on */ -if (var7 == NULL) { -var8 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var13 = var7 == var_other; -var11 = var13; -goto RET_LABEL12; -RET_LABEL12:(void)0; -} +RET_LABEL:; } -var9 = var11; -goto RET_LABEL10; -RET_LABEL10:(void)0; -} -var8 = var9; +/* method parser_prod#APipeMethid#n_op= for (self: APipeMethid, Token) */ +void nit__parser_prod___APipeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -if (var8){ -/* isa nullable TId */ -cltype15 = type_nullable__nit__TId.color; -idtype16 = type_nullable__nit__TId.id; -if(var_new_child == NULL) { -var14 = 1; -} else { -if(cltype15 >= var_new_child->type->table_size) { -var14 = 0; -} else { -var14 = var_new_child->type->type_table[cltype15] == idtype16; } +RET_LABEL:; } -if (unlikely(!var14)) { -var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TId", var_class_name17); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2098); -show_backtrace(1); +/* method parser_prod#APipeMethid#visit_all for (self: APipeMethid, Visitor) */ +void nit__parser_prod___APipeMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2004); +fatal_exit(1); } { -nit__parser_prod___ALabel___n_id_61d(self, var_new_child); /* Direct call parser_prod#ALabel#n_id= on */ -} -goto RET_LABEL; -} else { +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ALabel#n_kwlabel= for (self: ALabel, TKwlabel) */ -void nit__parser_prod___ALabel___n_kwlabel_61d(val* self, val* p0) { -val* var_node /* var node: TKwlabel */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALabel___n_kwlabel].val = var_node; /* _n_kwlabel on */ +/* method parser_prod#ACaretMethid#init_acaretmethid for (self: ACaretMethid, nullable TCaret) */ +void nit__parser_prod___ACaretMethid___init_acaretmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TCaret */; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2012); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2013); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} +} RET_LABEL:; } -/* method parser_prod#ALabel#n_id= for (self: ALabel, nullable TId) */ -void nit__parser_prod___ALabel___n_id_61d(val* self, val* p0) { -val* var_node /* var node: nullable TId */; -val* var /* : null */; +/* method parser_prod#ACaretMethid#replace_child for (self: ACaretMethid, ANode, nullable ANode) */ +void nit__parser_prod___ACaretMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALabel___n_id].val = var_node; /* _n_id on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2018); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +{ /* Inline kernel#Object#== (var,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} } if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +/* isa TCaret */ +cltype = type_nit__TCaret.color; +idtype = type_nit__TCaret.id; +if(var_new_child == NULL) { +var6 = 0; +} else { +if(cltype >= var_new_child->type->table_size) { +var6 = 0; +} else { +var6 = var_new_child->type->type_table[cltype] == idtype; +} +} +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCaret", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2019); +fatal_exit(1); } +{ +nit__parser_prod___ACaretMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#ACaretMethid#n_op= on */ } +goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ALabel#visit_all for (self: ALabel, Visitor) */ -void nit__parser_prod___ALabel___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ACaretMethid#n_op= for (self: ACaretMethid, Token) */ +void nit__parser_prod___ACaretMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ACaretMethid#visit_all for (self: ACaretMethid, Visitor) */ +void nit__parser_prod___ACaretMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TKwlabel */; -val* var1 /* : nullable TId */; +val* var /* : Token */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ALabel___n_kwlabel].val; /* _n_kwlabel on */ +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwlabel"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2117); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2033); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ALabel___n_id].val; /* _n_id on */ -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#ABlockExpr#init_ablockexpr for (self: ABlockExpr, Collection[Object], nullable TKwend) */ -void nit__parser_prod___ABlockExpr___init_ablockexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: Collection[Object] */; -val* var_n_kwend /* var n_kwend: nullable TKwend */; -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 */; -var_n_expr = p0; -var_n_kwend = p1; +/* method parser_prod#AAmpMethid#init_aampmethid for (self: AAmpMethid, nullable TAmp) */ +void nit__parser_prod___AAmpMethid___init_aampmethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TAmp */; { -{ /* Inline parser_nodes#ABlockExpr#n_expr (self) on */ -var2 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1565); -show_backtrace(1); -} -var = var2; +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -{ -nit___nit__ANodes___unsafe_add_all(var, var_n_expr); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2041); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_kwend].val = var_n_kwend; /* _n_kwend on */ -var3 = NULL; -if (var_n_kwend == NULL) { -var4 = 0; /* is null */ +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2042); +fatal_exit(1); } else { -var4 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_kwend,var3) on */ -var_other = var3; -{ -var7 = ((short int (*)(val* self, val* p0))(var_n_kwend->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwend, var_other) /* == on */; -} -var8 = !var7; -var5 = var8; -goto RET_LABEL6; -RET_LABEL6:(void)0; -} -var4 = var5; -} -if (var4){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_kwend,self) on */ -var_n_kwend->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL9:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -} else { } RET_LABEL:; } -/* method parser_prod#ABlockExpr#replace_child for (self: ABlockExpr, ANode, nullable ANode) */ -void nit__parser_prod___ABlockExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AAmpMethid#replace_child for (self: AAmpMethid, ANode, nullable ANode) */ +void nit__parser_prod___AAmpMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : ANodes[AExpr] */; -val* var2 /* : ANodes[AExpr] */; +val* var /* : Token */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; -val* var4 /* : nullable TKwend */; 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#ABlockExpr#n_expr (self) on */ -var2 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1565); -show_backtrace(1); -} -var = var2; -RET_LABEL1:(void)0; -} +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2047); +fatal_exit(1); } { -var3 = nit___nit__ANodes___replace_child(var, var_old_child, var_new_child); -} -if (var3){ -goto RET_LABEL; -} else { -} -var4 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_kwend].val; /* _n_kwend on */ -if (var4 == NULL) { -var5 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var4,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var4,var_other) on */ -var10 = var4 == var_other; -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } -var6 = var8; -goto RET_LABEL7; -RET_LABEL7:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var5 = var6; } -if (var5){ -/* isa nullable TKwend */ -cltype = type_nullable__nit__TKwend.color; -idtype = type_nullable__nit__TKwend.id; +if (var1){ +/* isa TAmp */ +cltype = type_nit__TAmp.color; +idtype = type_nit__TAmp.id; if(var_new_child == NULL) { -var11 = 1; +var6 = 0; } else { if(cltype >= var_new_child->type->table_size) { -var11 = 0; +var6 = 0; } else { -var11 = var_new_child->type->type_table[cltype] == idtype; +var6 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var11)) { +if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwend", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2136); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAmp", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2048); +fatal_exit(1); } { -nit__parser_prod___ABlockExpr___n_kwend_61d(self, var_new_child); /* Direct call parser_prod#ABlockExpr#n_kwend= on */ +nit__parser_prod___AAmpMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#AAmpMethid#n_op= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ABlockExpr#n_kwend= for (self: ABlockExpr, nullable TKwend) */ -void nit__parser_prod___ABlockExpr___n_kwend_61d(val* self, val* p0) { -val* var_node /* var node: nullable TKwend */; -val* var /* : null */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; +/* method parser_prod#AAmpMethid#n_op= for (self: AAmpMethid, Token) */ +void nit__parser_prod___AAmpMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_kwend].val = var_node; /* _n_kwend 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; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +RET_LABEL:; +} +/* method parser_prod#AAmpMethid#visit_all for (self: AAmpMethid, Visitor) */ +void nit__parser_prod___AAmpMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2062); +fatal_exit(1); } -if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } +RET_LABEL:; } -} else { -} -RET_LABEL:; -} -/* method parser_prod#ABlockExpr#visit_all for (self: ABlockExpr, Visitor) */ -void nit__parser_prod___ABlockExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : ANodes[AExpr] */; -val* var2 /* : ANodes[AExpr] */; -val* var3 /* : nullable TKwend */; -var_v = p0; -{ -{ /* Inline parser_nodes#ABlockExpr#n_expr (self) on */ -var2 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1565); -show_backtrace(1); -} -var = var2; -RET_LABEL1:(void)0; -} -} -{ -nit___nit__ANodes___visit_all(var, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ -} -var3 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_kwend].val; /* _n_kwend on */ +/* method parser_prod#ATildeMethid#init_atildemethid for (self: ATildeMethid, nullable TTilde) */ +void nit__parser_prod___ATildeMethid___init_atildemethid(val* self, val* p0) { +val* var_n_op /* var n_op: nullable TTilde */; { -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#AVardeclExpr#init_avardeclexpr for (self: AVardeclExpr, nullable TKwvar, nullable TId, nullable AType, nullable TAssign, nullable AExpr, nullable AAnnotations) */ -void nit__parser_prod___AVardeclExpr___init_avardeclexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { -val* var_n_kwvar /* var n_kwvar: nullable TKwvar */; -val* var_n_id /* var n_id: nullable TId */; -val* var_n_type /* var n_type: nullable AType */; -val* var_n_assign /* var n_assign: nullable TAssign */; -val* var_n_expr /* var n_expr: nullable AExpr */; -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 */; -val* var9 /* : null */; -short int var10 /* : Bool */; -short int var11 /* : Bool */; -short int var13 /* : Bool */; -short int var14 /* : Bool */; -val* var16 /* : null */; -short int var17 /* : Bool */; -short int var18 /* : Bool */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -val* var23 /* : null */; -short int var24 /* : Bool */; -short int var25 /* : Bool */; -short int var27 /* : Bool */; -short int var28 /* : Bool */; -var_n_kwvar = p0; -var_n_id = p1; -var_n_type = p2; -var_n_assign = p3; -var_n_expr = p4; -var_n_annotations = p5; -if (unlikely(var_n_kwvar == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2164); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_kwvar].val = var_n_kwvar; /* _n_kwvar on */ -if (var_n_kwvar == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2165); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwvar,self) on */ -if (unlikely(var_n_kwvar == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwvar->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_id == NULL)) { +var_n_op = p0; +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2166); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2070); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2167); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2071); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_type].val = var_n_type; /* _n_type on */ -var = NULL; -if (var_n_type == NULL) { -var3 = 0; /* is null */ -} else { -var3 = 1; /* arg is null and recv is not */ +RET_LABEL:; } -if (0) { -{ /* Inline kernel#Object#!= (var_n_type,var) on */ -var_other = var; -{ -var6 = ((short int (*)(val* self, val* p0))(var_n_type->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_type, var_other) /* == on */; +/* method parser_prod#ATildeMethid#replace_child for (self: ATildeMethid, ANode, nullable ANode) */ +void nit__parser_prod___ATildeMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : Token */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2076); +fatal_exit(1); } -var7 = !var6; -var4 = var7; -goto RET_LABEL5; -RET_LABEL5:(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 */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var3 = var4; } -if (var3){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ -var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL8:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } } +if (var1){ +/* isa TTilde */ +cltype = type_nit__TTilde.color; +idtype = type_nit__TTilde.id; +if(var_new_child == NULL) { +var6 = 0; } else { -} -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_assign].val = var_n_assign; /* _n_assign on */ -var9 = NULL; -if (var_n_assign == NULL) { -var10 = 0; /* is null */ +if(cltype >= var_new_child->type->table_size) { +var6 = 0; } else { -var10 = 1; /* arg is null and recv is not */ +var6 = var_new_child->type->type_table[cltype] == idtype; +} +} +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TTilde", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2077); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_n_assign,var9) on */ -var_other = var9; { -var13 = ((short int (*)(val* self, val* p0))(var_n_assign->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_assign, var_other) /* == on */; +nit__parser_prod___ATildeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(self, var_new_child); /* Direct call parser_prod#ATildeMethid#n_op= on */ } -var14 = !var13; -var11 = var14; -goto RET_LABEL12; -RET_LABEL12:(void)0; +goto RET_LABEL; +} else { } -var10 = var11; +RET_LABEL:; } -if (var10){ +/* method parser_prod#ATildeMethid#n_op= for (self: ATildeMethid, Token) */ +void nit__parser_prod___ATildeMethid___nit__parser_nodes__AOperatorMethid__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ -var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL15:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -} else { +RET_LABEL:; } -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val = var_n_expr; /* _n_expr on */ -var16 = NULL; -if (var_n_expr == NULL) { -var17 = 0; /* is null */ -} else { -var17 = 1; /* arg is null and recv is not */ +/* method parser_prod#ATildeMethid#visit_all for (self: ATildeMethid, Visitor) */ +void nit__parser_prod___ATildeMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AOperatorMethid___n_op].val; /* _n_op on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2091); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_n_expr,var16) on */ -var_other = var16; { -var20 = ((short int (*)(val* self, val* p0))(var_n_expr->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_expr, var_other) /* == on */; -} -var21 = !var20; -var18 = var21; -goto RET_LABEL19; -RET_LABEL19:(void)0; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var17 = var18; +RET_LABEL:; } -if (var17){ +/* method parser_prod#ABraMethid#init_abramethid for (self: ABraMethid, nullable TObra, nullable TCbra) */ +void nit__parser_prod___ABraMethid___init_abramethid(val* self, val* p0, val* p1) { +val* var_n_obra /* var n_obra: nullable TObra */; +val* var_n_cbra /* var n_cbra: nullable TCbra */; { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL22:(void)0; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } } -} else { +var_n_obra = p0; +var_n_cbra = p1; +if (unlikely(var_n_obra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2100); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ -var23 = NULL; -if (var_n_annotations == NULL) { -var24 = 0; /* is null */ +self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_obra].val = var_n_obra; /* _n_obra on */ +if (var_n_obra == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2101); +fatal_exit(1); } else { -var24 = 1; /* arg is null and recv is not */ +{ /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on */ +if (unlikely(var_n_obra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_n_annotations,var23) on */ -var_other = var23; -{ -var27 = ((short int (*)(val* self, val* p0))(var_n_annotations->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var_n_obra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -var28 = !var27; -var25 = var28; -goto RET_LABEL26; -RET_LABEL26:(void)0; } -var24 = var25; +if (unlikely(var_n_cbra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2102); +fatal_exit(1); } -if (var24){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ -var_n_annotations->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL29:(void)0; +self->attrs[COLOR_nit__parser_nodes__ABraMethid___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", FILE_nit__parser_prod, 2103); +fatal_exit(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", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_cbra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } -} else { } RET_LABEL:; } -/* method parser_prod#AVardeclExpr#replace_child for (self: AVardeclExpr, ANode, nullable ANode) */ -void nit__parser_prod___AVardeclExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ABraMethid#replace_child for (self: ABraMethid, ANode, nullable ANode) */ +void nit__parser_prod___ABraMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwvar */; +val* var /* : TObra */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -3988,7 +3754,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TId */; +val* var7 /* : TCbra */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -3996,55 +3762,19 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : nullable AType */; -short int var18 /* : Bool */; -short int var19 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -const char* var_class_name27; -val* var28 /* : nullable TAssign */; -short int var29 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var34 /* : Bool */; -short int var35 /* : Bool */; -int cltype36; -int idtype37; -const char* var_class_name38; -val* var39 /* : nullable AExpr */; -short int var40 /* : Bool */; -short int var41 /* : Bool */; -short int var43 /* : Bool */; -short int var45 /* : Bool */; -short int var46 /* : Bool */; -int cltype47; -int idtype48; -const char* var_class_name49; -val* var50 /* : nullable AAnnotations */; -short int var51 /* : Bool */; -short int var52 /* : Bool */; -short int var54 /* : Bool */; -short int var56 /* : Bool */; -short int var57 /* : Bool */; -int cltype58; -int idtype59; -const char* var_class_name60; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_kwvar].val; /* _n_kwvar on */ +var = self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_obra].val; /* _n_obra on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwvar"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2180); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2108); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -4057,9 +3787,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwvar */ -cltype = type_nit__TKwvar.color; -idtype = type_nit__TKwvar.id; +/* isa TObra */ +cltype = type_nit__TObra.color; +idtype = type_nit__TObra.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -4071,27 +3801,27 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwvar", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2181); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2109); +fatal_exit(1); } { -nit__parser_prod___AVardeclExpr___n_kwvar_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_kwvar= on */ +nit__parser_prod___ABraMethid___n_obra_61d(self, var_new_child); /* Direct call parser_prod#ABraMethid#n_obra= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_id].val; /* _n_id on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_cbra].val; /* _n_cbra on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2184); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2112); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -4104,9 +3834,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa TId */ -cltype14 = type_nit__TId.color; -idtype15 = type_nit__TId.id; +/* isa TCbra */ +cltype14 = type_nit__TCbra.color; +idtype15 = type_nit__TCbra.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -4118,516 +3848,759 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2185); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCbra", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2113); +fatal_exit(1); } { -nit__parser_prod___AVardeclExpr___n_id_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_id= on */ +nit__parser_prod___ABraMethid___n_cbra_61d(self, var_new_child); /* Direct call parser_prod#ABraMethid#n_cbra= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_type].val; /* _n_type on */ -if (var17 == NULL) { -var18 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ -var_other = var_old_child; +RET_LABEL:; +} +/* method parser_prod#ABraMethid#n_obra= for (self: ABraMethid, TObra) */ +void nit__parser_prod___ABraMethid___n_obra_61d(val* self, val* p0) { +val* var_node /* var node: TObra */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_obra].val = var_node; /* _n_obra on */ { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ -var23 = var17 == var_other; -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -var19 = var21; -goto RET_LABEL20; -RET_LABEL20:(void)0; +RET_LABEL:; } -var18 = var19; +/* method parser_prod#ABraMethid#n_cbra= for (self: ABraMethid, TCbra) */ +void nit__parser_prod___ABraMethid___n_cbra_61d(val* self, val* p0) { +val* var_node /* var node: TCbra */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_cbra].val = var_node; /* _n_cbra on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -if (var18){ -/* isa nullable AType */ -cltype25 = type_nullable__nit__AType.color; -idtype26 = type_nullable__nit__AType.id; -if(var_new_child == NULL) { -var24 = 1; -} else { -if(cltype25 >= var_new_child->type->table_size) { -var24 = 0; -} else { -var24 = var_new_child->type->type_table[cltype25] == idtype26; } +RET_LABEL:; } -if (unlikely(!var24)) { -var_class_name27 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name27); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2189); -show_backtrace(1); +/* method parser_prod#ABraMethid#visit_all for (self: ABraMethid, Visitor) */ +void nit__parser_prod___ABraMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TObra */; +val* var1 /* : TCbra */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_obra].val; /* _n_obra on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2132); +fatal_exit(1); } { -nit__parser_prod___AVardeclExpr___n_type_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_type= on */ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -goto RET_LABEL; -} else { +var1 = self->attrs[COLOR_nit__parser_nodes__ABraMethid___n_cbra].val; /* _n_cbra on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2133); +fatal_exit(1); } -var28 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_assign].val; /* _n_assign on */ -if (var28 == NULL) { -var29 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var28,var_old_child) on */ -var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var28,var_other) on */ -var34 = var28 == var_other; -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; +nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +RET_LABEL:; } -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; +/* method parser_prod#AAssignMethid#init_aassignmethid for (self: AAssignMethid, nullable TId, nullable TAssign) */ +void nit__parser_prod___AAssignMethid___init_aassignmethid(val* self, val* p0, val* p1) { +val* var_n_id /* var n_id: nullable TId */; +val* var_n_assign /* var n_assign: nullable TAssign */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -var29 = var30; } -if (var29){ -/* isa nullable TAssign */ -cltype36 = type_nullable__nit__TAssign.color; -idtype37 = type_nullable__nit__TAssign.id; -if(var_new_child == NULL) { -var35 = 1; -} else { -if(cltype36 >= var_new_child->type->table_size) { -var35 = 0; +var_n_id = p0; +var_n_assign = p1; +if (unlikely(var_n_id == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2142); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_id].val = var_n_id; /* _n_id on */ +if (var_n_id == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2143); +fatal_exit(1); } else { -var35 = var_new_child->type->type_table[cltype36] == idtype37; +{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ +if (unlikely(var_n_id == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -if (unlikely(!var35)) { -var_class_name38 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TAssign", var_class_name38); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2193); -show_backtrace(1); } -{ -nit__parser_prod___AVardeclExpr___n_assign_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_assign= on */ +if (unlikely(var_n_assign == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2144); +fatal_exit(1); } -goto RET_LABEL; +self->attrs[COLOR_nit__parser_nodes__AAssignMethid___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", FILE_nit__parser_prod, 2145); +fatal_exit(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", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var39 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val; /* _n_expr on */ -if (var39 == NULL) { -var40 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var39,var_old_child) on */ +var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AAssignMethid#replace_child for (self: AAssignMethid, ANode, nullable ANode) */ +void nit__parser_prod___AAssignMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : TId */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +val* var7 /* : TAssign */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var12 /* : Bool */; +short int var13 /* : Bool */; +int cltype14; +int idtype15; +const char* var_class_name16; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_id].val; /* _n_id on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2150); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var39,var_other) on */ -var45 = var39 == var_other; -var43 = var45; -goto RET_LABEL44; -RET_LABEL44:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } -var41 = var43; -goto RET_LABEL42; -RET_LABEL42:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var40 = var41; } -if (var40){ -/* isa nullable AExpr */ -cltype47 = type_nullable__nit__AExpr.color; -idtype48 = type_nullable__nit__AExpr.id; +if (var1){ +/* isa TId */ +cltype = type_nit__TId.color; +idtype = type_nit__TId.id; if(var_new_child == NULL) { -var46 = 1; +var6 = 0; } else { -if(cltype47 >= var_new_child->type->table_size) { -var46 = 0; +if(cltype >= var_new_child->type->table_size) { +var6 = 0; } else { -var46 = var_new_child->type->type_table[cltype47] == idtype48; +var6 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var46)) { -var_class_name49 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name49); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2197); -show_backtrace(1); +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2151); +fatal_exit(1); } { -nit__parser_prod___AVardeclExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_expr= on */ +nit__parser_prod___AAssignMethid___n_id_61d(self, var_new_child); /* Direct call parser_prod#AAssignMethid#n_id= on */ } goto RET_LABEL; } else { } -var50 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ -if (var50 == NULL) { -var51 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var50,var_old_child) on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_assign].val; /* _n_assign on */ +if (unlikely(var7 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2154); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var50,var_other) on */ -var56 = var50 == var_other; -var54 = var56; -goto RET_LABEL55; -RET_LABEL55:(void)0; +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var12 = var7 == var_other; +var10 = var12; +goto RET_LABEL11; +RET_LABEL11:(void)0; } } -var52 = var54; -goto RET_LABEL53; -RET_LABEL53:(void)0; +var8 = var10; +goto RET_LABEL9; +RET_LABEL9:(void)0; } -var51 = var52; } -if (var51){ -/* isa nullable AAnnotations */ -cltype58 = type_nullable__nit__AAnnotations.color; -idtype59 = type_nullable__nit__AAnnotations.id; +if (var8){ +/* isa TAssign */ +cltype14 = type_nit__TAssign.color; +idtype15 = type_nit__TAssign.id; if(var_new_child == NULL) { -var57 = 1; +var13 = 0; } else { -if(cltype58 >= var_new_child->type->table_size) { -var57 = 0; +if(cltype14 >= var_new_child->type->table_size) { +var13 = 0; } else { -var57 = var_new_child->type->type_table[cltype58] == idtype59; +var13 = var_new_child->type->type_table[cltype14] == idtype15; } } -if (unlikely(!var57)) { -var_class_name60 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name60); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2201); -show_backtrace(1); +if (unlikely(!var13)) { +var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2155); +fatal_exit(1); } { -nit__parser_prod___AVardeclExpr___nit__parser_nodes__Prod__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_annotations= on */ +nit__parser_prod___AAssignMethid___n_assign_61d(self, var_new_child); /* Direct call parser_prod#AAssignMethid#n_assign= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AVardeclExpr#n_kwvar= for (self: AVardeclExpr, TKwvar) */ -void nit__parser_prod___AVardeclExpr___n_kwvar_61d(val* self, val* p0) { -val* var_node /* var node: TKwvar */; +/* method parser_prod#AAssignMethid#n_id= for (self: AAssignMethid, TId) */ +void nit__parser_prod___AAssignMethid___n_id_61d(val* self, val* p0) { +val* var_node /* var node: TId */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_kwvar].val = var_node; /* _n_kwvar on */ +self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_id].val = var_node; /* _n_id on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVardeclExpr#n_id= for (self: AVardeclExpr, TId) */ -void nit__parser_prod___AVardeclExpr___n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#AAssignMethid#n_assign= for (self: AAssignMethid, TAssign) */ +void nit__parser_prod___AAssignMethid___n_assign_61d(val* self, val* p0) { +val* var_node /* var node: TAssign */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_assign].val = var_node; /* _n_assign on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVardeclExpr#n_type= for (self: AVardeclExpr, nullable AType) */ -void nit__parser_prod___AVardeclExpr___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 */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_type].val = var_node; /* _n_type on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +/* method parser_prod#AAssignMethid#visit_all for (self: AAssignMethid, Visitor) */ +void nit__parser_prod___AAssignMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TId */; +val* var1 /* : TAssign */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_id].val; /* _n_id on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2174); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var1 = self->attrs[COLOR_nit__parser_nodes__AAssignMethid___n_assign].val; /* _n_assign on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2175); +fatal_exit(1); } -var1 = var2; +{ +nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -if (var1){ +RET_LABEL:; +} +/* method parser_prod#ABraassignMethid#init_abraassignmethid for (self: ABraassignMethid, nullable TObra, nullable TCbra, nullable TAssign) */ +void nit__parser_prod___ABraassignMethid___init_abraassignmethid(val* self, val* p0, val* p1, val* p2) { +val* var_n_obra /* var n_obra: nullable TObra */; +val* var_n_cbra /* var n_cbra: nullable TCbra */; +val* var_n_assign /* var n_assign: nullable TAssign */; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } } +var_n_obra = p0; +var_n_cbra = p1; +var_n_assign = p2; +if (unlikely(var_n_obra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2185); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_obra].val = var_n_obra; /* _n_obra on */ +if (var_n_obra == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2186); +fatal_exit(1); } else { +{ /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on */ +if (unlikely(var_n_obra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -RET_LABEL:; +var_n_obra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -/* method parser_prod#AVardeclExpr#n_assign= for (self: AVardeclExpr, nullable TAssign) */ -void nit__parser_prod___AVardeclExpr___n_assign_61d(val* self, val* p0) { -val* var_node /* var node: nullable TAssign */; -val* var /* : null */; +} +if (unlikely(var_n_cbra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2187); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___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", FILE_nit__parser_prod, 2188); +fatal_exit(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", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_cbra->attrs[COLOR_nit__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", FILE_nit__parser_prod, 2189); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___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", FILE_nit__parser_prod, 2190); +fatal_exit(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", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ABraassignMethid#replace_child for (self: ABraassignMethid, ANode, nullable ANode) */ +void nit__parser_prod___ABraassignMethid___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : TObra */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_assign].val = var_node; /* _n_assign on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +short int var6 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +val* var7 /* : TCbra */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var12 /* : Bool */; +short int var13 /* : Bool */; +int cltype14; +int idtype15; +const char* var_class_name16; +val* var17 /* : TAssign */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_obra].val; /* _n_obra on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2195); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +{ /* Inline kernel#Object#== (var,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} } if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +/* isa TObra */ +cltype = type_nit__TObra.color; +idtype = type_nit__TObra.id; +if(var_new_child == NULL) { +var6 = 0; +} else { +if(cltype >= var_new_child->type->table_size) { +var6 = 0; +} else { +var6 = var_new_child->type->type_table[cltype] == idtype; +} } +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2196); +fatal_exit(1); } +{ +nit__parser_prod___ABraassignMethid___n_obra_61d(self, var_new_child); /* Direct call parser_prod#ABraassignMethid#n_obra= on */ +} +goto RET_LABEL; } else { } -RET_LABEL:; +var7 = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_cbra].val; /* _n_cbra on */ +if (unlikely(var7 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2199); +fatal_exit(1); } -/* method parser_prod#AVardeclExpr#n_expr= for (self: AVardeclExpr, nullable AExpr) */ -void nit__parser_prod___AVardeclExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val = var_node; /* _n_expr on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ +{ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var12 = var7 == var_other; +var10 = var12; +goto RET_LABEL11; +RET_LABEL11:(void)0; +} +} +var8 = var10; +goto RET_LABEL9; +RET_LABEL9:(void)0; +} +} +if (var8){ +/* isa TCbra */ +cltype14 = type_nit__TCbra.color; +idtype15 = type_nit__TCbra.id; +if(var_new_child == NULL) { +var13 = 0; +} else { +if(cltype14 >= var_new_child->type->table_size) { +var13 = 0; } else { -var1 = 1; /* arg is null and recv is not */ +var13 = var_new_child->type->type_table[cltype14] == idtype15; +} +} +if (unlikely(!var13)) { +var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCbra", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2200); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +nit__parser_prod___ABraassignMethid___n_cbra_61d(self, var_new_child); /* Direct call parser_prod#ABraassignMethid#n_cbra= on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +goto RET_LABEL; +} else { } -var1 = var2; +var17 = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_assign].val; /* _n_assign on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2203); +fatal_exit(1); } -if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa TAssign */ +cltype24 = type_nit__TAssign.color; +idtype25 = type_nit__TAssign.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; +} } +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2204); +fatal_exit(1); +} +{ +nit__parser_prod___ABraassignMethid___n_assign_61d(self, var_new_child); /* Direct call parser_prod#ABraassignMethid#n_assign= on */ } +goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AVardeclExpr#n_annotations= for (self: AVardeclExpr, nullable AAnnotations) */ -void nit__parser_prod___AVardeclExpr___nit__parser_nodes__Prod__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 */; +/* method parser_prod#ABraassignMethid#n_obra= for (self: ABraassignMethid, TObra) */ +void nit__parser_prod___ABraassignMethid___n_obra_61d(val* self, val* p0) { +val* var_node /* var node: TObra */; var_node = p0; -self->attrs[COLOR_nit__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; +self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_obra].val = var_node; /* _n_obra on */ { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +RET_LABEL:; } -if (var1){ +/* method parser_prod#ABraassignMethid#n_cbra= for (self: ABraassignMethid, TCbra) */ +void nit__parser_prod___ABraassignMethid___n_cbra_61d(val* self, val* p0) { +val* var_node /* var node: TCbra */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_cbra].val = var_node; /* _n_cbra on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -} else { +RET_LABEL:; +} +/* method parser_prod#ABraassignMethid#n_assign= for (self: ABraassignMethid, TAssign) */ +void nit__parser_prod___ABraassignMethid___n_assign_61d(val* self, val* p0) { +val* var_node /* var node: TAssign */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_assign].val = var_node; /* _n_assign on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} } RET_LABEL:; } -/* method parser_prod#AVardeclExpr#visit_all for (self: AVardeclExpr, Visitor) */ -void nit__parser_prod___AVardeclExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ABraassignMethid#visit_all for (self: ABraassignMethid, Visitor) */ +void nit__parser_prod___ABraassignMethid___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TKwvar */; -val* var1 /* : TId */; -val* var2 /* : nullable AType */; -val* var3 /* : nullable TAssign */; -val* var4 /* : nullable AExpr */; -val* var5 /* : nullable AAnnotations */; +val* var /* : TObra */; +val* var1 /* : TCbra */; +val* var2 /* : TAssign */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_kwvar].val; /* _n_kwvar on */ +var = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_obra].val; /* _n_obra on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwvar"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2240); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2228); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_id].val; /* _n_id on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_cbra].val; /* _n_cbra on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2241); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2229); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_type].val; /* _n_type on */ -{ -nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var3 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_assign].val; /* _n_assign on */ -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var4 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val; /* _n_expr on */ -{ -nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABraassignMethid___n_assign].val; /* _n_assign on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2230); +fatal_exit(1); } -var5 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { -nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AReturnExpr#init_areturnexpr for (self: AReturnExpr, nullable TKwreturn, nullable AExpr) */ -void nit__parser_prod___AReturnExpr___init_areturnexpr(val* self, val* p0, val* p1) { -val* var_n_kwreturn /* var n_kwreturn: nullable TKwreturn */; -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var /* : null */; -short int var1 /* : Bool */; +/* method parser_prod#ASignature#init_asignature for (self: ASignature, nullable TOpar, Collection[Object], nullable TCpar, nullable AType) */ +void nit__parser_prod___ASignature___init_asignature(val* self, val* p0, val* p1, val* p2, val* p3) { +val* var_n_opar /* var n_opar: nullable TOpar */; +val* var_n_params /* var n_params: Collection[Object] */; +val* var_n_cpar /* var n_cpar: nullable TCpar */; +val* var_n_type /* var n_type: nullable AType */; +short int var /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; short int var4 /* : Bool */; short int var5 /* : Bool */; -val* var7 /* : null */; -short int var8 /* : Bool */; -short int var9 /* : Bool */; +val* var7 /* : ANodes[AParam] */; +val* var9 /* : ANodes[AParam] */; +short int var10 /* : Bool */; short int var11 /* : Bool */; -short int var12 /* : Bool */; -var_n_kwreturn = p0; -var_n_expr = p1; -self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_kwreturn].val = var_n_kwreturn; /* _n_kwreturn on */ -var = NULL; -if (var_n_kwreturn == NULL) { -var1 = 0; /* is null */ +short int var13 /* : Bool */; +short int var14 /* : Bool */; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +short int var19 /* : Bool */; +short int var20 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_opar = p0; +var_n_params = p1; +var_n_cpar = p2; +var_n_type = p3; +self->attrs[COLOR_nit__parser_nodes__ASignature___n_opar].val = var_n_opar; /* _n_opar on */ +if (var_n_opar == NULL) { +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_kwreturn,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_n_opar,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_n_kwreturn->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwreturn, var_other) /* == on */; +var4 = ((short int(*)(val* self, val* p0))(var_n_opar->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_opar, var_other); /* == on */ } var5 = !var4; var2 = var5; goto RET_LABEL3; RET_LABEL3:(void)0; } -var1 = var2; +var = var2; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwreturn,self) on */ -var_n_kwreturn->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_opar,self) on */ +var_n_opar->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL6:(void)0; } } } else { } -self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val = var_n_expr; /* _n_expr on */ -var7 = NULL; -if (var_n_expr == NULL) { -var8 = 0; /* is null */ +{ +{ /* Inline parser_nodes#ASignature#n_params (self) on */ +var9 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_params].val; /* _n_params on */ +if (unlikely(var9 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1693); +fatal_exit(1); +} +var7 = var9; +RET_LABEL8:(void)0; +} +} +{ +nit___nit__ANodes___unsafe_add_all(var7, var_n_params); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ +} +self->attrs[COLOR_nit__parser_nodes__ASignature___n_cpar].val = var_n_cpar; /* _n_cpar on */ +if (var_n_cpar == NULL) { +var10 = 0; /* is null */ } else { -var8 = 1; /* arg is null and recv is not */ +var10 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_expr,var7) on */ -var_other = var7; +{ /* Inline kernel#Object#!= (var_n_cpar,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var11 = ((short int (*)(val* self, val* p0))(var_n_expr->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_expr, var_other) /* == on */; +var13 = ((short int(*)(val* self, val* p0))(var_n_cpar->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_cpar, var_other); /* == on */ } -var12 = !var11; -var9 = var12; -goto RET_LABEL10; -RET_LABEL10:(void)0; +var14 = !var13; +var11 = var14; +goto RET_LABEL12; +RET_LABEL12:(void)0; +} +var10 = var11; +} +if (var10){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_cpar,self) on */ +var_n_cpar->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL15:(void)0; +} +} +} else { +} +self->attrs[COLOR_nit__parser_nodes__ASignature___n_type].val = var_n_type; /* _n_type on */ +if (var_n_type == NULL) { +var16 = 0; /* is null */ +} else { +var16 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_type,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var19 = ((short int(*)(val* self, val* p0))(var_n_type->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_type, var_other); /* == on */ +} +var20 = !var19; +var17 = var20; +goto RET_LABEL18; +RET_LABEL18:(void)0; } -var8 = var9; +var16 = var17; } -if (var8){ +if (var16){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL13:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ +var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL21:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AReturnExpr#replace_child for (self: AReturnExpr, ANode, nullable ANode) */ -void nit__parser_prod___AReturnExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ASignature#replace_child for (self: ASignature, ANode, nullable ANode) */ +void nit__parser_prod___ASignature___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : nullable TKwreturn */; +val* var /* : nullable TOpar */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -4637,25 +4610,37 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : nullable AExpr */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; +val* var8 /* : ANodes[AParam] */; +val* var10 /* : ANodes[AParam] */; +short int var11 /* : Bool */; +val* var12 /* : nullable TCpar */; +short int var13 /* : Bool */; short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; +short int var16 /* : Bool */; +short int var18 /* : Bool */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +const char* var_class_name22; +val* var23 /* : nullable AType */; +short int var24 /* : Bool */; +short int var25 /* : Bool */; +short int var27 /* : Bool */; +short int var29 /* : Bool */; +short int var30 /* : Bool */; +int cltype31; +int idtype32; +const char* var_class_name33; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_kwreturn].val; /* _n_kwreturn on */ +var = self->attrs[COLOR_nit__parser_nodes__ASignature___n_opar].val; /* _n_opar on */ if (var == NULL) { var1 = 0; /* cannot be null */ } else { -{ /* 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; @@ -4669,9 +4654,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa nullable TKwreturn */ -cltype = type_nullable__nit__TKwreturn.color; -idtype = type_nullable__nit__TKwreturn.id; +/* isa nullable TOpar */ +cltype = type_nullable__nit__TOpar.color; +idtype = type_nullable__nit__TOpar.id; if(var_new_child == NULL) { var7 = 1; } else { @@ -4683,450 +4668,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`", "nullable TKwreturn", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2263); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TOpar", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2253); +fatal_exit(1); } { -nit__parser_prod___AReturnExpr___n_kwreturn_61d(self, var_new_child); /* Direct call parser_prod#AReturnExpr#n_kwreturn= on */ +nit__parser_prod___ASignature___n_opar_61d(self, var_new_child); /* Direct call parser_prod#ASignature#n_opar= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val; /* _n_expr on */ -if (var8 == NULL) { -var9 = 0; /* cannot be null */ +{ +{ /* Inline parser_nodes#ASignature#n_params (self) on */ +var10 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_params].val; /* _n_params on */ +if (unlikely(var10 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1693); +fatal_exit(1); +} +var8 = var10; +RET_LABEL9:(void)0; +} +} +{ +var11 = nit___nit__ANodes___replace_child(var8, var_old_child, var_new_child); +} +if (var11){ +goto RET_LABEL; } else { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +} +var12 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_cpar].val; /* _n_cpar on */ +if (var12 == NULL) { +var13 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var12,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 (var12,var_other) on */ +var18 = var12 == var_other; +var16 = var18; +goto RET_LABEL17; +RET_LABEL17:(void)0; } } -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +var14 = var16; +goto RET_LABEL15; +RET_LABEL15:(void)0; } -var9 = var10; +var13 = var14; } -if (var9){ -/* isa nullable AExpr */ -cltype16 = type_nullable__nit__AExpr.color; -idtype17 = type_nullable__nit__AExpr.id; +if (var13){ +/* isa nullable TCpar */ +cltype20 = type_nullable__nit__TCpar.color; +idtype21 = type_nullable__nit__TCpar.id; if(var_new_child == NULL) { -var15 = 1; +var19 = 1; } else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; +if(cltype20 >= var_new_child->type->table_size) { +var19 = 0; } else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; +var19 = var_new_child->type->type_table[cltype20] == idtype21; } } -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 AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2267); -show_backtrace(1); +if (unlikely(!var19)) { +var_class_name22 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TCpar", var_class_name22); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2258); +fatal_exit(1); } { -nit__parser_prod___AReturnExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AReturnExpr#n_expr= on */ +nit__parser_prod___ASignature___n_cpar_61d(self, var_new_child); /* Direct call parser_prod#ASignature#n_cpar= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AReturnExpr#n_kwreturn= for (self: AReturnExpr, nullable TKwreturn) */ -void nit__parser_prod___AReturnExpr___n_kwreturn_61d(val* self, val* p0) { -val* var_node /* var node: nullable TKwreturn */; -val* var /* : null */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_kwreturn].val = var_node; /* _n_kwreturn on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ +var23 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_type].val; /* _n_type on */ +if (var23 == NULL) { +var24 = 0; /* cannot be null */ } else { -var1 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#== (var23,var_old_child) on */ +var_other = var_old_child; { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +{ /* Inline kernel#Object#is_same_instance (var23,var_other) on */ +var29 = var23 == var_other; +var27 = var29; +goto RET_LABEL28; +RET_LABEL28:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +var25 = var27; +goto RET_LABEL26; +RET_LABEL26:(void)0; } -if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +var24 = var25; +} +if (var24){ +/* isa nullable AType */ +cltype31 = type_nullable__nit__AType.color; +idtype32 = type_nullable__nit__AType.id; +if(var_new_child == NULL) { +var30 = 1; +} else { +if(cltype31 >= var_new_child->type->table_size) { +var30 = 0; +} else { +var30 = var_new_child->type->type_table[cltype31] == idtype32; +} +} +if (unlikely(!var30)) { +var_class_name33 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name33); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2262); +fatal_exit(1); } +{ +nit__parser_prod___ASignature___n_type_61d(self, var_new_child); /* Direct call parser_prod#ASignature#n_type= on */ } +goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AReturnExpr#n_expr= for (self: AReturnExpr, nullable AExpr) */ -void nit__parser_prod___AReturnExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; +/* method parser_prod#ASignature#n_opar= for (self: ASignature, nullable TOpar) */ +void nit__parser_prod___ASignature___n_opar_61d(val* self, val* p0) { +val* var_node /* var node: nullable TOpar */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val = var_node; /* _n_expr on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__ASignature___n_opar].val = var_node; /* _n_opar on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; -{ -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; -} -} -} else { +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -RET_LABEL:; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -/* method parser_prod#AReturnExpr#visit_all for (self: AReturnExpr, Visitor) */ -void nit__parser_prod___AReturnExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : nullable TKwreturn */; -val* var1 /* : nullable AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_kwreturn].val; /* _n_kwreturn on */ -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +var = var1; } -var1 = self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val; /* _n_expr on */ +if (var){ { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#ABreakExpr#init_abreakexpr for (self: ABreakExpr, nullable TKwbreak, nullable ALabel) */ -void nit__parser_prod___ABreakExpr___init_abreakexpr(val* self, val* p0, val* p1) { -val* var_n_kwbreak /* var n_kwbreak: nullable TKwbreak */; -val* var_n_label /* var n_label: nullable ALabel */; -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 */; -var_n_kwbreak = p0; -var_n_label = p1; -if (unlikely(var_n_kwbreak == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2296); -show_backtrace(1); +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } -self->attrs[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak].val = var_n_kwbreak; /* _n_kwbreak on */ -if (var_n_kwbreak == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2297); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwbreak,self) on */ -if (unlikely(var_n_kwbreak == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); } -var_n_kwbreak->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +} else { } +RET_LABEL:; } -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ -var = NULL; -if (var_n_label == NULL) { -var2 = 0; /* is null */ +/* method parser_prod#ASignature#n_cpar= for (self: ASignature, nullable TCpar) */ +void nit__parser_prod___ASignature___n_cpar_61d(val* self, val* p0) { +val* var_node /* var node: nullable TCpar */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ASignature___n_cpar].val = var_node; /* _n_cpar on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { -var2 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_label,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var5 = ((short int (*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var6 = !var5; -var3 = var6; -goto RET_LABEL4; -RET_LABEL4:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var2 = var3; +var = var1; } -if (var2){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ -var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL7:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#ABreakExpr#replace_child for (self: ABreakExpr, ANode, nullable ANode) */ -void nit__parser_prod___ABreakExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwbreak */; +/* method parser_prod#ASignature#n_type= for (self: ASignature, nullable AType) */ +void nit__parser_prod___ASignature___n_type_61d(val* self, val* p0) { +val* var_node /* var node: nullable AType */; +short int var /* : Bool */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : nullable ALabel */; -short int var8 /* : Bool */; -short int var9 /* : Bool */; -short int var11 /* : Bool */; -short int var13 /* : Bool */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -const char* var_class_name17; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak].val; /* _n_kwbreak on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwbreak"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2304); -show_backtrace(1); +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ASignature___n_type].val = var_node; /* _n_type on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var1 = var3; +var4 = !var3; +var1 = var4; goto RET_LABEL2; RET_LABEL2:(void)0; } +var = var1; } -if (var1){ -/* isa TKwbreak */ -cltype = type_nit__TKwbreak.color; -idtype = type_nit__TKwbreak.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwbreak", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2305); -show_backtrace(1); -} +if (var){ { -nit__parser_prod___ABreakExpr___n_kwbreak_61d(self, var_new_child); /* Direct call parser_prod#ABreakExpr#n_kwbreak= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } -goto RET_LABEL; -} else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ -if (var7 == NULL) { -var8 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var13 = var7 == var_other; -var11 = var13; -goto RET_LABEL12; -RET_LABEL12:(void)0; } +RET_LABEL:; } -var9 = var11; -goto RET_LABEL10; -RET_LABEL10:(void)0; +/* method parser_prod#ASignature#visit_all for (self: ASignature, Visitor) */ +void nit__parser_prod___ASignature___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : nullable TOpar */; +val* var1 /* : ANodes[AParam] */; +val* var3 /* : ANodes[AParam] */; +val* var4 /* : nullable TCpar */; +val* var5 /* : nullable AType */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__ASignature___n_opar].val; /* _n_opar on */ +{ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var8 = var9; +{ +{ /* Inline parser_nodes#ASignature#n_params (self) on */ +var3 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_params].val; /* _n_params on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1693); +fatal_exit(1); } -if (var8){ -/* isa nullable ALabel */ -cltype15 = type_nullable__nit__ALabel.color; -idtype16 = type_nullable__nit__ALabel.id; -if(var_new_child == NULL) { -var14 = 1; -} else { -if(cltype15 >= var_new_child->type->table_size) { -var14 = 0; -} else { -var14 = var_new_child->type->type_table[cltype15] == idtype16; +var1 = var3; +RET_LABEL2:(void)0; } } -if (unlikely(!var14)) { -var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name17); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2309); -show_backtrace(1); +{ +nit___nit__ANodes___visit_all(var1, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ } +var4 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_cpar].val; /* _n_cpar on */ { -nit__parser_prod___ABreakExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#ABreakExpr#n_label= on */ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ } -goto RET_LABEL; -} else { +var5 = self->attrs[COLOR_nit__parser_nodes__ASignature___n_type].val; /* _n_type on */ +{ +nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ABreakExpr#n_kwbreak= for (self: ABreakExpr, TKwbreak) */ -void nit__parser_prod___ABreakExpr___n_kwbreak_61d(val* self, val* p0) { -val* var_node /* var node: TKwbreak */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak].val = var_node; /* _n_kwbreak on */ +/* method parser_prod#AParam#init_aparam for (self: AParam, nullable TId, nullable AType, nullable TDotdotdot, nullable AAnnotations) */ +void nit__parser_prod___AParam___init_aparam(val* self, val* p0, val* p1, val* p2, val* p3) { +val* var_n_id /* var n_id: nullable TId */; +val* var_n_type /* var n_type: nullable AType */; +val* var_n_dotdotdot /* var n_dotdotdot: nullable TDotdotdot */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +short int var /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var8 /* : Bool */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; +short int var12 /* : Bool */; +short int var14 /* : Bool */; +short int var15 /* : Bool */; +short int var17 /* : Bool */; +short int var18 /* : Bool */; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -RET_LABEL:; +var_n_id = p0; +var_n_type = p1; +var_n_dotdotdot = p2; +var_n_annotations = p3; +if (unlikely(var_n_id == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2300); +fatal_exit(1); } -/* method parser_prod#ABreakExpr#n_label= for (self: ABreakExpr, nullable ALabel) */ -void nit__parser_prod___ABreakExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { -val* var_node /* var node: nullable ALabel */; -val* var /* : null */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ +self->attrs[COLOR_nit__parser_nodes__AParam___n_id].val = var_n_id; /* _n_id on */ +if (var_n_id == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2301); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ +if (unlikely(var_n_id == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} +} +self->attrs[COLOR_nit__parser_nodes__AParam___n_type].val = var_n_type; /* _n_type on */ +if (var_n_type == NULL) { +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_n_type,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var5 = ((short int(*)(val* self, val* p0))(var_n_type->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_type, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var6 = !var5; +var3 = var6; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var1 = var2; +var = var3; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ +var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } } } else { } -RET_LABEL:; +self->attrs[COLOR_nit__parser_nodes__AParam___n_dotdotdot].val = var_n_dotdotdot; /* _n_dotdotdot on */ +if (var_n_dotdotdot == NULL) { +var8 = 0; /* is null */ +} else { +var8 = 1; /* arg is null and recv is not */ } -/* method parser_prod#ABreakExpr#visit_all for (self: ABreakExpr, Visitor) */ -void nit__parser_prod___ABreakExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TKwbreak */; -val* var1 /* : nullable ALabel */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak].val; /* _n_kwbreak on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwbreak"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2328); -show_backtrace(1); +if (0) { +{ /* Inline kernel#Object#!= (var_n_dotdotdot,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var11 = ((short int(*)(val* self, val* p0))(var_n_dotdotdot->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_dotdotdot, var_other); /* == on */ +} +var12 = !var11; +var9 = var12; +goto RET_LABEL10; +RET_LABEL10:(void)0; +} +var8 = var9; +} +if (var8){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_dotdotdot,self) on */ +var_n_dotdotdot->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL13:(void)0; } -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +} else { +} +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +if (var_n_annotations == NULL) { +var14 = 0; /* is null */ +} else { +var14 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,((val*)NULL)) on */ +var_other = ((val*)NULL); { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +var17 = ((short int(*)(val* self, val* p0))(var_n_annotations->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_annotations, var_other); /* == on */ } -RET_LABEL:; +var18 = !var17; +var15 = var18; +goto RET_LABEL16; +RET_LABEL16:(void)0; } -/* method parser_prod#AAbortExpr#init_aabortexpr for (self: AAbortExpr, nullable TKwabort) */ -void nit__parser_prod___AAbortExpr___init_aabortexpr(val* self, val* p0) { -val* var_n_kwabort /* var n_kwabort: nullable TKwabort */; -var_n_kwabort = p0; -if (unlikely(var_n_kwabort == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2337); -show_backtrace(1); +var14 = var15; } -self->attrs[COLOR_nit__parser_nodes__AAbortExpr___n_kwabort].val = var_n_kwabort; /* _n_kwabort on */ -if (var_n_kwabort == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2338); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwabort,self) on */ -if (unlikely(var_n_kwabort == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if (var14){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL19:(void)0; } -var_n_kwabort->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +} else { } RET_LABEL:; } -/* method parser_prod#AAbortExpr#replace_child for (self: AAbortExpr, ANode, nullable ANode) */ -void nit__parser_prod___AAbortExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AParam#replace_child for (self: AParam, ANode, nullable ANode) */ +void nit__parser_prod___AParam___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwabort */; +val* var /* : TId */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -5135,19 +5092,46 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; +val* var7 /* : nullable AType */; +short int var8 /* : Bool */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; +short int var13 /* : Bool */; +short int var14 /* : Bool */; +int cltype15; +int idtype16; +const char* var_class_name17; +val* var18 /* : nullable TDotdotdot */; +short int var19 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var24 /* : Bool */; +short int var25 /* : Bool */; +int cltype26; +int idtype27; +const char* var_class_name28; +val* var29 /* : nullable AAnnotations */; +short int var30 /* : Bool */; +short int var31 /* : Bool */; +short int var33 /* : Bool */; +short int var35 /* : Bool */; +short int var36 /* : Bool */; +int cltype37; +int idtype38; +const char* var_class_name39; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AAbortExpr___n_kwabort].val; /* _n_kwabort on */ +var = self->attrs[COLOR_nit__parser_nodes__AParam___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwabort"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2343); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2312); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -5160,9 +5144,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwabort */ -cltype = type_nit__TKwabort.color; -idtype = type_nit__TKwabort.id; +/* isa TId */ +cltype = type_nit__TId.color; +idtype = type_nit__TId.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -5174,454 +5158,517 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwabort", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2344); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2313); +fatal_exit(1); } { -nit__parser_prod___AAbortExpr___n_kwabort_61d(self, var_new_child); /* Direct call parser_prod#AAbortExpr#n_kwabort= on */ +nit__parser_prod___AParam___n_id_61d(self, var_new_child); /* Direct call parser_prod#AParam#n_id= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AAbortExpr#n_kwabort= for (self: AAbortExpr, TKwabort) */ -void nit__parser_prod___AAbortExpr___n_kwabort_61d(val* self, val* p0) { -val* var_node /* var node: TKwabort */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAbortExpr___n_kwabort].val = var_node; /* _n_kwabort on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AParam___n_type].val; /* _n_type on */ +if (var7 == NULL) { +var8 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var7,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var13 = var7 == var_other; +var11 = var13; +goto RET_LABEL12; +RET_LABEL12:(void)0; } } -RET_LABEL:; +var9 = var11; +goto RET_LABEL10; +RET_LABEL10:(void)0; } -/* method parser_prod#AAbortExpr#visit_all for (self: AAbortExpr, Visitor) */ -void nit__parser_prod___AAbortExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TKwabort */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AAbortExpr___n_kwabort].val; /* _n_kwabort on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwabort"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2358); -show_backtrace(1); +var8 = var9; } -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +if (var8){ +/* isa nullable AType */ +cltype15 = type_nullable__nit__AType.color; +idtype16 = type_nullable__nit__AType.id; +if(var_new_child == NULL) { +var14 = 1; +} else { +if(cltype15 >= var_new_child->type->table_size) { +var14 = 0; +} else { +var14 = var_new_child->type->type_table[cltype15] == idtype16; } -RET_LABEL:; } -/* method parser_prod#AContinueExpr#init_acontinueexpr for (self: AContinueExpr, nullable TKwcontinue, nullable ALabel) */ -void nit__parser_prod___AContinueExpr___init_acontinueexpr(val* self, val* p0, val* p1) { -val* var_n_kwcontinue /* var n_kwcontinue: nullable TKwcontinue */; -val* var_n_label /* var n_label: nullable ALabel */; -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 */; -val* var7 /* : null */; -short int var8 /* : Bool */; -short int var9 /* : Bool */; -short int var11 /* : Bool */; -short int var12 /* : Bool */; -var_n_kwcontinue = p0; -var_n_label = p1; -self->attrs[COLOR_nit__parser_nodes__AContinueExpr___n_kwcontinue].val = var_n_kwcontinue; /* _n_kwcontinue on */ -var = NULL; -if (var_n_kwcontinue == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ +if (unlikely(!var14)) { +var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name17); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2317); +fatal_exit(1); } -if (0) { -{ /* Inline kernel#Object#!= (var_n_kwcontinue,var) on */ -var_other = var; { -var4 = ((short int (*)(val* self, val* p0))(var_n_kwcontinue->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwcontinue, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +nit__parser_prod___AParam___n_type_61d(self, var_new_child); /* Direct call parser_prod#AParam#n_type= on */ } -var1 = var2; +goto RET_LABEL; +} else { } -if (var1){ +var18 = self->attrs[COLOR_nit__parser_nodes__AParam___n_dotdotdot].val; /* _n_dotdotdot on */ +if (var18 == NULL) { +var19 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var18,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwcontinue,self) on */ -var_n_kwcontinue->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ +var24 = var18 == var_other; +var22 = var24; +goto RET_LABEL23; +RET_LABEL23:(void)0; } } -} else { +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ -var7 = NULL; -if (var_n_label == NULL) { -var8 = 0; /* is null */ -} else { -var8 = 1; /* arg is null and recv is not */ +var19 = var20; } -if (0) { -{ /* Inline kernel#Object#!= (var_n_label,var7) on */ -var_other = var7; -{ -var11 = ((short int (*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other) /* == on */; +if (var19){ +/* isa nullable TDotdotdot */ +cltype26 = type_nullable__nit__TDotdotdot.color; +idtype27 = type_nullable__nit__TDotdotdot.id; +if(var_new_child == NULL) { +var25 = 1; +} else { +if(cltype26 >= var_new_child->type->table_size) { +var25 = 0; +} else { +var25 = var_new_child->type->type_table[cltype26] == idtype27; } -var12 = !var11; -var9 = var12; -goto RET_LABEL10; -RET_LABEL10:(void)0; } -var8 = var9; +if (unlikely(!var25)) { +var_class_name28 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TDotdotdot", var_class_name28); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2321); +fatal_exit(1); } -if (var8){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ -var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL13:(void)0; -} +nit__parser_prod___AParam___n_dotdotdot_61d(self, var_new_child); /* Direct call parser_prod#AParam#n_dotdotdot= on */ } +goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AContinueExpr#replace_child for (self: AContinueExpr, ANode, nullable ANode) */ -void nit__parser_prod___AContinueExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : nullable TKwcontinue */; -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 ALabel */; -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_nit__parser_nodes__AContinueExpr___n_kwcontinue].val; /* _n_kwcontinue on */ -if (var == NULL) { -var1 = 0; /* cannot be null */ +var29 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var29 == NULL) { +var30 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var29,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 (var29,var_other) on */ +var35 = var29 == var_other; +var33 = var35; +goto RET_LABEL34; +RET_LABEL34:(void)0; } } -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var31 = var33; +goto RET_LABEL32; +RET_LABEL32:(void)0; } -var1 = var2; +var30 = var31; } -if (var1){ -/* isa nullable TKwcontinue */ -cltype = type_nullable__nit__TKwcontinue.color; -idtype = type_nullable__nit__TKwcontinue.id; +if (var30){ +/* isa nullable AAnnotations */ +cltype37 = type_nullable__nit__AAnnotations.color; +idtype38 = type_nullable__nit__AAnnotations.id; if(var_new_child == NULL) { -var7 = 1; +var36 = 1; } else { -if(cltype >= var_new_child->type->table_size) { -var7 = 0; +if(cltype37 >= var_new_child->type->table_size) { +var36 = 0; } else { -var7 = var_new_child->type->type_table[cltype] == idtype; +var36 = var_new_child->type->type_table[cltype37] == idtype38; } } -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 TKwcontinue", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2376); -show_backtrace(1); +if (unlikely(!var36)) { +var_class_name39 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name39); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2325); +fatal_exit(1); } { -nit__parser_prod___AContinueExpr___n_kwcontinue_61d(self, var_new_child); /* Direct call parser_prod#AContinueExpr#n_kwcontinue= on */ +nit__parser_prod___AParam___nit__parser_nodes__Prod__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AParam#n_annotations= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label 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 */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; +RET_LABEL:; } +/* method parser_prod#AParam#n_id= for (self: AParam, TId) */ +void nit__parser_prod___AParam___n_id_61d(val* self, val* p0) { +val* var_node /* var node: TId */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AParam___n_id].val = var_node; /* _n_id on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; } -var9 = var10; +RET_LABEL:; } -if (var9){ -/* isa nullable ALabel */ -cltype16 = type_nullable__nit__ALabel.color; -idtype17 = type_nullable__nit__ALabel.id; -if(var_new_child == NULL) { -var15 = 1; -} else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; +/* method parser_prod#AParam#n_type= for (self: AParam, nullable AType) */ +void nit__parser_prod___AParam___n_type_61d(val* self, val* p0) { +val* var_node /* var node: nullable AType */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AParam___n_type].val = var_node; /* _n_type on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -if (unlikely(!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 ALabel", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2380); -show_backtrace(1); +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; } +if (var){ { -nit__parser_prod___AContinueExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#AContinueExpr#n_label= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} } -goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AContinueExpr#n_kwcontinue= for (self: AContinueExpr, nullable TKwcontinue) */ -void nit__parser_prod___AContinueExpr___n_kwcontinue_61d(val* self, val* p0) { -val* var_node /* var node: nullable TKwcontinue */; -val* var /* : null */; +/* method parser_prod#AParam#n_dotdotdot= for (self: AParam, nullable TDotdotdot) */ +void nit__parser_prod___AParam___n_dotdotdot_61d(val* self, val* p0) { +val* var_node /* var node: nullable TDotdotdot */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AContinueExpr___n_kwcontinue].val = var_node; /* _n_kwcontinue on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__AParam___n_dotdotdot].val = var_node; /* _n_dotdotdot on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AContinueExpr#n_label= for (self: AContinueExpr, nullable ALabel) */ -void nit__parser_prod___AContinueExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { -val* var_node /* var node: nullable ALabel */; -val* var /* : null */; +/* method parser_prod#AParam#n_annotations= for (self: AParam, nullable AAnnotations) */ +void nit__parser_prod___AParam___nit__parser_nodes__Prod__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AContinueExpr#visit_all for (self: AContinueExpr, Visitor) */ -void nit__parser_prod___AContinueExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AParam#visit_all for (self: AParam, Visitor) */ +void nit__parser_prod___AParam___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : nullable TKwcontinue */; -val* var1 /* : nullable ALabel */; +val* var /* : TId */; +val* var1 /* : nullable AType */; +val* var2 /* : nullable TDotdotdot */; +val* var3 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AContinueExpr___n_kwcontinue].val; /* _n_kwcontinue on */ +var = self->attrs[COLOR_nit__parser_nodes__AParam___n_id].val; /* _n_id on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2354); +fatal_exit(1); +} { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +var1 = self->attrs[COLOR_nit__parser_nodes__AParam___n_type].val; /* _n_type on */ { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__AParam___n_dotdotdot].val; /* _n_dotdotdot on */ +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#ADoExpr#init_adoexpr for (self: ADoExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */ -void nit__parser_prod___ADoExpr___init_adoexpr(val* self, val* p0, val* p1, val* p2) { -val* var_n_kwdo /* var n_kwdo: nullable TKwdo */; -val* var_n_block /* var n_block: nullable AExpr */; -val* var_n_label /* var n_label: nullable ALabel */; -val* var /* : null */; +/* method parser_prod#AType#init_atype for (self: AType, nullable TKwnullable, nullable TClassid, nullable TObra, Collection[Object], nullable TCbra, nullable AAnnotations) */ +void nit__parser_prod___AType___init_atype(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { +val* var_n_kwnullable /* var n_kwnullable: nullable TKwnullable */; +val* var_n_id /* var n_id: nullable TClassid */; +val* var_n_obra /* var n_obra: nullable TObra */; +val* var_n_types /* var n_types: Collection[Object] */; +val* var_n_cbra /* var n_cbra: nullable TCbra */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +short int var /* : Bool */; short int var2 /* : Bool */; -short int var3 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var4 /* : Bool */; short int var5 /* : Bool */; -short int var6 /* : Bool */; -val* var8 /* : null */; +short int var8 /* : Bool */; short int var9 /* : Bool */; -short int var10 /* : Bool */; +short int var11 /* : Bool */; short int var12 /* : Bool */; -short int var13 /* : Bool */; -var_n_kwdo = p0; -var_n_block = p1; -var_n_label = p2; -if (unlikely(var_n_kwdo == NULL)) { +val* var14 /* : ANodes[AType] */; +val* var16 /* : ANodes[AType] */; +short int var17 /* : Bool */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var24 /* : Bool */; +short int var26 /* : Bool */; +short int var27 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwnullable = p0; +var_n_id = p1; +var_n_obra = p2; +var_n_types = p3; +var_n_cbra = p4; +var_n_annotations = p5; +self->attrs[COLOR_nit__parser_nodes__AType___n_kwnullable].val = var_n_kwnullable; /* _n_kwnullable on */ +if (var_n_kwnullable == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_kwnullable,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var4 = ((short int(*)(val* self, val* p0))(var_n_kwnullable->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwnullable, var_other); /* == on */ +} +var5 = !var4; +var2 = var5; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var = var2; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_kwnullable,self) on */ +var_n_kwnullable->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL6:(void)0; +} +} +} else { +} +if (unlikely(var_n_id == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2410); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2372); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AType___n_id].val = var_n_id; /* _n_id on */ +if (var_n_id == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2373); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ +if (unlikely(var_n_id == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +self->attrs[COLOR_nit__parser_nodes__AType___n_obra].val = var_n_obra; /* _n_obra on */ +if (var_n_obra == NULL) { +var8 = 0; /* is null */ +} else { +var8 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_obra,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var11 = ((short int(*)(val* self, val* p0))(var_n_obra->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_obra, var_other); /* == on */ +} +var12 = !var11; +var9 = var12; +goto RET_LABEL10; +RET_LABEL10:(void)0; +} +var8 = var9; +} +if (var8){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on */ +var_n_obra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL13:(void)0; +} } -self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_kwdo].val = var_n_kwdo; /* _n_kwdo on */ -if (var_n_kwdo == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2411); -show_backtrace(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on */ -if (unlikely(var_n_kwdo == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); } -var_n_kwdo->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ +{ /* Inline parser_nodes#AType#n_types (self) on */ +var16 = self->attrs[COLOR_nit__parser_nodes__AType___n_types].val; /* _n_types on */ +if (unlikely(var16 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1729); +fatal_exit(1); } +var14 = var16; +RET_LABEL15:(void)0; } -self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_block].val = var_n_block; /* _n_block on */ -var = NULL; -if (var_n_block == NULL) { -var2 = 0; /* is null */ +} +{ +nit___nit__ANodes___unsafe_add_all(var14, var_n_types); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ +} +self->attrs[COLOR_nit__parser_nodes__AType___n_cbra].val = var_n_cbra; /* _n_cbra on */ +if (var_n_cbra == NULL) { +var17 = 0; /* is null */ } else { -var2 = 1; /* arg is null and recv is not */ +var17 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_block,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_n_cbra,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var5 = ((short int (*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other) /* == on */; +var20 = ((short int(*)(val* self, val* p0))(var_n_cbra->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_cbra, var_other); /* == on */ } -var6 = !var5; -var3 = var6; -goto RET_LABEL4; -RET_LABEL4:(void)0; +var21 = !var20; +var18 = var21; +goto RET_LABEL19; +RET_LABEL19:(void)0; } -var2 = var3; +var17 = var18; } -if (var2){ +if (var17){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ -var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL7:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_cbra,self) on */ +var_n_cbra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL22:(void)0; } } } else { } -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ -var8 = NULL; -if (var_n_label == NULL) { -var9 = 0; /* is null */ +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +if (var_n_annotations == NULL) { +var23 = 0; /* is null */ } else { -var9 = 1; /* arg is null and recv is not */ +var23 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_label,var8) on */ -var_other = var8; +{ /* Inline kernel#Object#!= (var_n_annotations,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var12 = ((short int (*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other) /* == on */; +var26 = ((short int(*)(val* self, val* p0))(var_n_annotations->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_annotations, var_other); /* == on */ } -var13 = !var12; -var10 = var13; -goto RET_LABEL11; -RET_LABEL11:(void)0; +var27 = !var26; +var24 = var27; +goto RET_LABEL25; +RET_LABEL25:(void)0; } -var9 = var10; +var23 = var24; } -if (var9){ +if (var23){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ -var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL14:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL28:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#ADoExpr#replace_child for (self: ADoExpr, ANode, nullable ANode) */ -void nit__parser_prod___ADoExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AType#replace_child for (self: AType, ANode, nullable ANode) */ +void nit__parser_prod___AType___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwdo */; +val* var /* : nullable TKwnullable */; short int var1 /* : Bool */; +short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; +short int var4 /* : Bool */; short int var6 /* : Bool */; +short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : nullable AExpr */; -short int var8 /* : Bool */; +val* var8 /* : TClassid */; short int var9 /* : Bool */; short int var11 /* : Bool */; short int var13 /* : Bool */; @@ -5629,7 +5676,7 @@ short int var14 /* : Bool */; int cltype15; int idtype16; const char* var_class_name17; -val* var18 /* : nullable ALabel */; +val* var18 /* : nullable TObra */; short int var19 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -5638,64 +5685,86 @@ short int var25 /* : Bool */; int cltype26; int idtype27; const char* var_class_name28; +val* var29 /* : ANodes[AType] */; +val* var31 /* : ANodes[AType] */; +short int var32 /* : Bool */; +val* var33 /* : nullable TCbra */; +short int var34 /* : Bool */; +short int var35 /* : Bool */; +short int var37 /* : Bool */; +short int var39 /* : Bool */; +short int var40 /* : Bool */; +int cltype41; +int idtype42; +const char* var_class_name43; +val* var44 /* : nullable AAnnotations */; +short int var45 /* : Bool */; +short int var46 /* : Bool */; +short int var48 /* : Bool */; +short int var50 /* : Bool */; +short int var51 /* : Bool */; +int cltype52; +int idtype53; +const char* var_class_name54; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_kwdo].val; /* _n_kwdo on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2420); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var = self->attrs[COLOR_nit__parser_nodes__AType___n_kwnullable].val; /* _n_kwnullable 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 */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var6 = var == var_other; +var4 = var6; +goto RET_LABEL5; +RET_LABEL5:(void)0; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var2 = var4; +goto RET_LABEL3; +RET_LABEL3:(void)0; } +var1 = var2; } if (var1){ -/* isa TKwdo */ -cltype = type_nit__TKwdo.color; -idtype = type_nit__TKwdo.id; +/* isa nullable TKwnullable */ +cltype = type_nullable__nit__TKwnullable.color; +idtype = type_nullable__nit__TKwnullable.id; if(var_new_child == NULL) { -var6 = 0; +var7 = 1; } else { if(cltype >= var_new_child->type->table_size) { -var6 = 0; +var7 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var7 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var6)) { +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`", "TKwdo", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2421); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwnullable", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2386); +fatal_exit(1); } { -nit__parser_prod___ADoExpr___n_kwdo_61d(self, var_new_child); /* Direct call parser_prod#ADoExpr#n_kwdo= on */ +nit__parser_prod___AType___n_kwnullable_61d(self, var_new_child); /* Direct call parser_prod#AType#n_kwnullable= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_block].val; /* _n_block on */ -if (var7 == NULL) { -var8 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +var8 = self->attrs[COLOR_nit__parser_nodes__AType___n_id].val; /* _n_id on */ +if (unlikely(var8 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2389); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var13 = var7 == var_other; +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +var13 = var8 == var_other; var11 = var13; goto RET_LABEL12; RET_LABEL12:(void)0; @@ -5705,14 +5774,13 @@ var9 = var11; goto RET_LABEL10; RET_LABEL10:(void)0; } -var8 = var9; } -if (var8){ -/* isa nullable AExpr */ -cltype15 = type_nullable__nit__AExpr.color; -idtype16 = type_nullable__nit__AExpr.id; +if (var9){ +/* isa TClassid */ +cltype15 = type_nit__TClassid.color; +idtype16 = type_nit__TClassid.id; if(var_new_child == NULL) { -var14 = 1; +var14 = 0; } else { if(cltype15 >= var_new_child->type->table_size) { var14 = 0; @@ -5722,24 +5790,24 @@ var14 = var_new_child->type->type_table[cltype15] == idtype16; } if (unlikely(!var14)) { var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name17); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2425); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TClassid", var_class_name17); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2390); +fatal_exit(1); } { -nit__parser_prod___ADoExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#ADoExpr#n_block= on */ +nit__parser_prod___AType___n_id_61d(self, var_new_child); /* Direct call parser_prod#AType#n_id= on */ } goto RET_LABEL; } else { } -var18 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +var18 = self->attrs[COLOR_nit__parser_nodes__AType___n_obra].val; /* _n_obra on */ if (var18 == NULL) { var19 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var18,var_old_child) on */ +{ /* Inline kernel#Object#== (var18,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ var24 = var18 == var_other; var22 = var24; goto RET_LABEL23; @@ -5753,281 +5821,435 @@ RET_LABEL21:(void)0; var19 = var20; } if (var19){ -/* isa nullable ALabel */ -cltype26 = type_nullable__nit__ALabel.color; -idtype27 = type_nullable__nit__ALabel.id; +/* isa nullable TObra */ +cltype26 = type_nullable__nit__TObra.color; +idtype27 = type_nullable__nit__TObra.id; if(var_new_child == NULL) { var25 = 1; } else { if(cltype26 >= var_new_child->type->table_size) { var25 = 0; } else { -var25 = var_new_child->type->type_table[cltype26] == idtype27; +var25 = var_new_child->type->type_table[cltype26] == idtype27; +} +} +if (unlikely(!var25)) { +var_class_name28 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TObra", var_class_name28); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2394); +fatal_exit(1); +} +{ +nit__parser_prod___AType___n_obra_61d(self, var_new_child); /* Direct call parser_prod#AType#n_obra= on */ +} +goto RET_LABEL; +} else { +} +{ +{ /* Inline parser_nodes#AType#n_types (self) on */ +var31 = self->attrs[COLOR_nit__parser_nodes__AType___n_types].val; /* _n_types on */ +if (unlikely(var31 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1729); +fatal_exit(1); +} +var29 = var31; +RET_LABEL30:(void)0; +} +} +{ +var32 = nit___nit__ANodes___replace_child(var29, var_old_child, var_new_child); +} +if (var32){ +goto RET_LABEL; +} else { +} +var33 = self->attrs[COLOR_nit__parser_nodes__AType___n_cbra].val; /* _n_cbra on */ +if (var33 == NULL) { +var34 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var33,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var33,var_other) on */ +var39 = var33 == var_other; +var37 = var39; +goto RET_LABEL38; +RET_LABEL38:(void)0; +} +} +var35 = var37; +goto RET_LABEL36; +RET_LABEL36:(void)0; +} +var34 = var35; +} +if (var34){ +/* isa nullable TCbra */ +cltype41 = type_nullable__nit__TCbra.color; +idtype42 = type_nullable__nit__TCbra.id; +if(var_new_child == NULL) { +var40 = 1; +} else { +if(cltype41 >= var_new_child->type->table_size) { +var40 = 0; +} else { +var40 = var_new_child->type->type_table[cltype41] == idtype42; +} +} +if (unlikely(!var40)) { +var_class_name43 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TCbra", var_class_name43); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2399); +fatal_exit(1); +} +{ +nit__parser_prod___AType___n_cbra_61d(self, var_new_child); /* Direct call parser_prod#AType#n_cbra= on */ +} +goto RET_LABEL; +} else { +} +var44 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var44 == NULL) { +var45 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var44,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var44,var_other) on */ +var50 = var44 == var_other; +var48 = var50; +goto RET_LABEL49; +RET_LABEL49:(void)0; +} +} +var46 = var48; +goto RET_LABEL47; +RET_LABEL47:(void)0; +} +var45 = var46; +} +if (var45){ +/* isa nullable AAnnotations */ +cltype52 = type_nullable__nit__AAnnotations.color; +idtype53 = type_nullable__nit__AAnnotations.id; +if(var_new_child == NULL) { +var51 = 1; +} else { +if(cltype52 >= var_new_child->type->table_size) { +var51 = 0; +} else { +var51 = var_new_child->type->type_table[cltype52] == idtype53; +} +} +if (unlikely(!var51)) { +var_class_name54 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name54); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2403); +fatal_exit(1); +} +{ +nit__parser_prod___AType___nit__parser_nodes__Prod__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AType#n_annotations= on */ +} +goto RET_LABEL; +} else { +} +RET_LABEL:; +} +/* method parser_prod#AType#n_kwnullable= for (self: AType, nullable TKwnullable) */ +void nit__parser_prod___AType___n_kwnullable_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwnullable */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AType___n_kwnullable].val = var_node; /* _n_kwnullable on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -if (unlikely(!var25)) { -var_class_name28 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name28); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2429); -show_backtrace(1); +var = var1; } +if (var){ { -nit__parser_prod___ADoExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#ADoExpr#n_label= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} } -goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ADoExpr#n_kwdo= for (self: ADoExpr, TKwdo) */ -void nit__parser_prod___ADoExpr___n_kwdo_61d(val* self, val* p0) { -val* var_node /* var node: TKwdo */; +/* method parser_prod#AType#n_id= for (self: AType, TClassid) */ +void nit__parser_prod___AType___n_id_61d(val* self, val* p0) { +val* var_node /* var node: TClassid */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_kwdo].val = var_node; /* _n_kwdo on */ +self->attrs[COLOR_nit__parser_nodes__AType___n_id].val = var_node; /* _n_id on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ADoExpr#n_block= for (self: ADoExpr, nullable AExpr) */ -void nit__parser_prod___ADoExpr___n_block_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; +/* method parser_prod#AType#n_obra= for (self: AType, nullable TObra) */ +void nit__parser_prod___AType___n_obra_61d(val* self, val* p0) { +val* var_node /* var node: nullable TObra */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_block].val = var_node; /* _n_block on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__AType___n_obra].val = var_node; /* _n_obra on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#ADoExpr#n_label= for (self: ADoExpr, nullable ALabel) */ -void nit__parser_prod___ADoExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { -val* var_node /* var node: nullable ALabel */; -val* var /* : null */; +/* method parser_prod#AType#n_cbra= for (self: AType, nullable TCbra) */ +void nit__parser_prod___AType___n_cbra_61d(val* self, val* p0) { +val* var_node /* var node: nullable TCbra */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__AType___n_cbra].val = var_node; /* _n_cbra on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#ADoExpr#visit_all for (self: ADoExpr, Visitor) */ -void nit__parser_prod___ADoExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AType#n_annotations= for (self: AType, nullable AAnnotations) */ +void nit__parser_prod___AType___nit__parser_nodes__Prod__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AType#visit_all for (self: AType, Visitor) */ +void nit__parser_prod___AType___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TKwdo */; -val* var1 /* : nullable AExpr */; -val* var2 /* : nullable ALabel */; +val* var /* : nullable TKwnullable */; +val* var1 /* : TClassid */; +val* var2 /* : nullable TObra */; +val* var3 /* : ANodes[AType] */; +val* var5 /* : ANodes[AType] */; +val* var6 /* : nullable TCbra */; +val* var7 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_kwdo].val; /* _n_kwdo on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2453); -show_backtrace(1); -} +var = self->attrs[COLOR_nit__parser_nodes__AType___n_kwnullable].val; /* _n_kwnullable on */ { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_block].val; /* _n_block on */ +var1 = self->attrs[COLOR_nit__parser_nodes__AType___n_id].val; /* _n_id on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2438); +fatal_exit(1); +} { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +var2 = self->attrs[COLOR_nit__parser_nodes__AType___n_obra].val; /* _n_obra on */ { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } +{ +{ /* Inline parser_nodes#AType#n_types (self) on */ +var5 = self->attrs[COLOR_nit__parser_nodes__AType___n_types].val; /* _n_types on */ +if (unlikely(var5 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1729); +fatal_exit(1); +} +var3 = var5; +RET_LABEL4:(void)0; +} +} +{ +nit___nit__ANodes___visit_all(var3, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ +} +var6 = self->attrs[COLOR_nit__parser_nodes__AType___n_cbra].val; /* _n_cbra on */ +{ +nit___nit__Visitor___enter_visit(var_v, var6); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var7 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +nit___nit__Visitor___enter_visit(var_v, var7); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AIfExpr#init_aifexpr for (self: AIfExpr, nullable TKwif, nullable AExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AIfExpr___init_aifexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -val* var_n_kwif /* var n_kwif: nullable TKwif */; -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_then /* var n_then: nullable AExpr */; -val* var_n_else /* var n_else: nullable AExpr */; -val* var /* : null */; +/* method parser_prod#ALabel#init_alabel for (self: ALabel, nullable TKwlabel, nullable TId) */ +void nit__parser_prod___ALabel___init_alabel(val* self, val* p0, val* p1) { +val* var_n_kwlabel /* var n_kwlabel: nullable TKwlabel */; +val* var_n_id /* var n_id: nullable TId */; +short int var /* : Bool */; short int var3 /* : Bool */; -short int var4 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; short int var6 /* : Bool */; -short int var7 /* : Bool */; -val* var9 /* : null */; -short int var10 /* : Bool */; -short int var11 /* : Bool */; -short int var13 /* : Bool */; -short int var14 /* : Bool */; -var_n_kwif = p0; -var_n_expr = p1; -var_n_then = p2; -var_n_else = p3; -if (unlikely(var_n_kwif == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2466); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwif].val = var_n_kwif; /* _n_kwif on */ -if (var_n_kwif == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2467); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwif,self) on */ -if (unlikely(var_n_kwif == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwif->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr == NULL)) { +var_n_kwlabel = p0; +var_n_id = p1; +if (unlikely(var_n_kwlabel == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2468); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2451); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_nit__parser_nodes__ALabel___n_kwlabel].val = var_n_kwlabel; /* _n_kwlabel on */ +if (var_n_kwlabel == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2469); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2452); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwlabel,self) on */ +if (unlikely(var_n_kwlabel == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_kwlabel->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val = var_n_then; /* _n_then on */ -var = NULL; -if (var_n_then == NULL) { -var3 = 0; /* is null */ -} else { -var3 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_then,var) on */ -var_other = var; -{ -var6 = ((short int (*)(val* self, val* p0))(var_n_then->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_then, var_other) /* == on */; -} -var7 = !var6; -var4 = var7; -goto RET_LABEL5; -RET_LABEL5:(void)0; -} -var3 = var4; -} -if (var3){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_then,self) on */ -var_n_then->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL8:(void)0; -} -} -} else { -} -self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val = var_n_else; /* _n_else on */ -var9 = NULL; -if (var_n_else == NULL) { -var10 = 0; /* is null */ +self->attrs[COLOR_nit__parser_nodes__ALabel___n_id].val = var_n_id; /* _n_id on */ +if (var_n_id == NULL) { +var = 0; /* is null */ } else { -var10 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_else,var9) on */ -var_other = var9; +{ /* Inline kernel#Object#!= (var_n_id,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var13 = ((short int (*)(val* self, val* p0))(var_n_else->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_else, var_other) /* == on */; +var5 = ((short int(*)(val* self, val* p0))(var_n_id->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_id, var_other); /* == on */ } -var14 = !var13; -var11 = var14; -goto RET_LABEL12; -RET_LABEL12:(void)0; +var6 = !var5; +var3 = var6; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var10 = var11; +var = var3; } -if (var10){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_else,self) on */ -var_n_else->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL15:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ +var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AIfExpr#replace_child for (self: AIfExpr, ANode, nullable ANode) */ -void nit__parser_prod___AIfExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ALabel#replace_child for (self: ALabel, ANode, nullable ANode) */ +void nit__parser_prod___ALabel___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwif */; +val* var /* : TKwlabel */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -6036,45 +6258,28 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; +val* var7 /* : nullable TId */; short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -val* var17 /* : nullable AExpr */; -short int var18 /* : Bool */; -short int var19 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -const char* var_class_name27; -val* var28 /* : nullable AExpr */; -short int var29 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var34 /* : Bool */; -short int var35 /* : Bool */; -int cltype36; -int idtype37; -const char* var_class_name38; +short int var14 /* : Bool */; +int cltype15; +int idtype16; +const char* var_class_name17; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwif].val; /* _n_kwif on */ +var = self->attrs[COLOR_nit__parser_nodes__ALabel___n_kwlabel].val; /* _n_kwlabel on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2478); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwlabel"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2459); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -6087,9 +6292,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwif */ -cltype = type_nit__TKwif.color; -idtype = type_nit__TKwif.id; +/* isa TKwlabel */ +cltype = type_nit__TKwlabel.color; +idtype = type_nit__TKwlabel.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -6101,1624 +6306,1498 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwif", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2479); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwlabel", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2460); +fatal_exit(1); } { -nit__parser_prod___AIfExpr___n_kwif_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_kwif= on */ +nit__parser_prod___ALabel___n_kwlabel_61d(self, var_new_child); /* Direct call parser_prod#ALabel#n_kwlabel= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2482); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ALabel___n_id].val; /* _n_id on */ +if (var7 == NULL) { +var8 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var13 = var7 == var_other; +var11 = var13; +goto RET_LABEL12; +RET_LABEL12:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var9 = var11; +goto RET_LABEL10; +RET_LABEL10:(void)0; } +var8 = var9; } if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +/* isa nullable TId */ +cltype15 = type_nullable__nit__TId.color; +idtype16 = type_nullable__nit__TId.id; if(var_new_child == NULL) { -var13 = 0; +var14 = 1; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype15 >= var_new_child->type->table_size) { +var14 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var14 = var_new_child->type->type_table[cltype15] == idtype16; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2483); -show_backtrace(1); +if (unlikely(!var14)) { +var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TId", var_class_name17); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2464); +fatal_exit(1); } { -nit__parser_prod___AIfExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_expr= on */ +nit__parser_prod___ALabel___n_id_61d(self, var_new_child); /* Direct call parser_prod#ALabel#n_id= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val; /* _n_then on */ -if (var17 == NULL) { -var18 = 0; /* cannot be null */ +RET_LABEL:; +} +/* method parser_prod#ALabel#n_kwlabel= for (self: ALabel, TKwlabel) */ +void nit__parser_prod___ALabel___n_kwlabel_61d(val* self, val* p0) { +val* var_node /* var node: TKwlabel */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ALabel___n_kwlabel].val = var_node; /* _n_kwlabel on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ALabel#n_id= for (self: ALabel, nullable TId) */ +void nit__parser_prod___ALabel___n_id_61d(val* self, val* p0) { +val* var_node /* var node: nullable TId */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ALabel___n_id].val = var_node; /* _n_id on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ -var_other = var_old_child; +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ -var23 = var17 == var_other; -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var19 = var21; -goto RET_LABEL20; -RET_LABEL20:(void)0; +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } -var18 = var19; } -if (var18){ -/* isa nullable AExpr */ -cltype25 = type_nullable__nit__AExpr.color; -idtype26 = type_nullable__nit__AExpr.id; -if(var_new_child == NULL) { -var24 = 1; -} else { -if(cltype25 >= var_new_child->type->table_size) { -var24 = 0; } else { -var24 = var_new_child->type->type_table[cltype25] == idtype26; } +RET_LABEL:; } -if (unlikely(!var24)) { -var_class_name27 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name27); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2487); -show_backtrace(1); +/* method parser_prod#ALabel#visit_all for (self: ALabel, Visitor) */ +void nit__parser_prod___ALabel___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TKwlabel */; +val* var1 /* : nullable TId */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__ALabel___n_kwlabel].val; /* _n_kwlabel on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwlabel"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2483); +fatal_exit(1); } { -nit__parser_prod___AIfExpr___n_then_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_then= on */ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -goto RET_LABEL; -} else { +var1 = self->attrs[COLOR_nit__parser_nodes__ALabel___n_id].val; /* _n_id on */ +{ +nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var28 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val; /* _n_else on */ -if (var28 == NULL) { -var29 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var28,var_old_child) on */ -var_other = var_old_child; +RET_LABEL:; +} +/* method parser_prod#ABlockExpr#init_ablockexpr for (self: ABlockExpr, Collection[Object], nullable TKwend) */ +void nit__parser_prod___ABlockExpr___init_ablockexpr(val* self, val* p0, val* p1) { +val* var_n_expr /* var n_expr: Collection[Object] */; +val* var_n_kwend /* var n_kwend: nullable TKwend */; +val* var /* : ANodes[AExpr] */; +val* var3 /* : ANodes[AExpr] */; +short int var4 /* : Bool */; +short int var5 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var7 /* : Bool */; +short int var8 /* : Bool */; { -{ /* Inline kernel#Object#is_same_instance (var28,var_other) on */ -var34 = var28 == var_other; -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } } -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; +var_n_expr = p0; +var_n_kwend = p1; +{ +{ /* Inline parser_nodes#ABlockExpr#n_expr (self) on */ +var3 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1758); +fatal_exit(1); } -var29 = var30; +var = var3; +RET_LABEL2:(void)0; } -if (var29){ -/* isa nullable AExpr */ -cltype36 = type_nullable__nit__AExpr.color; -idtype37 = type_nullable__nit__AExpr.id; -if(var_new_child == NULL) { -var35 = 1; -} else { -if(cltype36 >= var_new_child->type->table_size) { -var35 = 0; +} +{ +nit___nit__ANodes___unsafe_add_all(var, var_n_expr); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ +} +self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_kwend].val = var_n_kwend; /* _n_kwend on */ +if (var_n_kwend == NULL) { +var4 = 0; /* is null */ } else { -var35 = var_new_child->type->type_table[cltype36] == idtype37; +var4 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_kwend,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var7 = ((short int(*)(val* self, val* p0))(var_n_kwend->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwend, var_other); /* == on */ } +var8 = !var7; +var5 = var8; +goto RET_LABEL6; +RET_LABEL6:(void)0; } -if (unlikely(!var35)) { -var_class_name38 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name38); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2491); -show_backtrace(1); +var4 = var5; } +if (var4){ { -nit__parser_prod___AIfExpr___n_else_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_else= on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_kwend,self) on */ +var_n_kwend->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL9:(void)0; +} } -goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AIfExpr#n_kwif= for (self: AIfExpr, TKwif) */ -void nit__parser_prod___AIfExpr___n_kwif_61d(val* self, val* p0) { -val* var_node /* var node: TKwif */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwif].val = var_node; /* _n_kwif on */ +/* method parser_prod#ABlockExpr#replace_child for (self: ABlockExpr, ANode, nullable ANode) */ +void nit__parser_prod___ABlockExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : ANodes[AExpr] */; +val* var2 /* : ANodes[AExpr] */; +short int var3 /* : Bool */; +val* var4 /* : nullable TKwend */; +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#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ABlockExpr#n_expr (self) on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1758); +fatal_exit(1); +} +var = var2; RET_LABEL1:(void)0; } } -RET_LABEL:; +{ +var3 = nit___nit__ANodes___replace_child(var, var_old_child, var_new_child); +} +if (var3){ +goto RET_LABEL; +} else { +} +var4 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_kwend].val; /* _n_kwend 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 (var4,var_other) on */ +var10 = var4 == var_other; +var8 = var10; +goto RET_LABEL9; +RET_LABEL9:(void)0; +} +} +var6 = var8; +goto RET_LABEL7; +RET_LABEL7:(void)0; +} +var5 = var6; +} +if (var5){ +/* isa nullable TKwend */ +cltype = type_nullable__nit__TKwend.color; +idtype = type_nullable__nit__TKwend.id; +if(var_new_child == NULL) { +var11 = 1; +} else { +if(cltype >= var_new_child->type->table_size) { +var11 = 0; +} else { +var11 = var_new_child->type->type_table[cltype] == idtype; +} +} +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 TKwend", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2502); +fatal_exit(1); } -/* method parser_prod#AIfExpr#n_expr= for (self: AIfExpr, AExpr) */ -void nit__parser_prod___AIfExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +nit__parser_prod___ABlockExpr___n_kwend_61d(self, var_new_child); /* Direct call parser_prod#ABlockExpr#n_kwend= on */ } +goto RET_LABEL; +} else { } RET_LABEL:; } -/* method parser_prod#AIfExpr#n_then= for (self: AIfExpr, nullable AExpr) */ -void nit__parser_prod___AIfExpr___n_then_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; +/* method parser_prod#ABlockExpr#n_kwend= for (self: ABlockExpr, nullable TKwend) */ +void nit__parser_prod___ABlockExpr___n_kwend_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwend */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val = var_node; /* _n_then on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_kwend].val = var_node; /* _n_kwend on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AIfExpr#n_else= for (self: AIfExpr, nullable AExpr) */ -void nit__parser_prod___AIfExpr___n_else_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; -short int var1 /* : Bool */; +/* method parser_prod#ABlockExpr#visit_all for (self: ABlockExpr, Visitor) */ +void nit__parser_prod___ABlockExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : ANodes[AExpr] */; +val* var2 /* : ANodes[AExpr] */; +val* var3 /* : nullable TKwend */; +var_v = p0; +{ +{ /* Inline parser_nodes#ABlockExpr#n_expr (self) on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1758); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +{ +nit___nit__ANodes___visit_all(var, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_kwend].val; /* _n_kwend on */ +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method parser_prod#AVardeclExpr#init_avardeclexpr for (self: AVardeclExpr, nullable TKwvar, nullable TId, nullable AType, nullable TAssign, nullable AExpr, nullable AAnnotations) */ +void nit__parser_prod___AVardeclExpr___init_avardeclexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { +val* var_n_kwvar /* var n_kwvar: nullable TKwvar */; +val* var_n_id /* var n_id: nullable TId */; +val* var_n_type /* var n_type: nullable AType */; +val* var_n_assign /* var n_assign: nullable TAssign */; +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +short int var /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; short int var4 /* : Bool */; short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val = var_node; /* _n_else on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ +short int var8 /* : Bool */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; +short int var12 /* : Bool */; +short int var14 /* : Bool */; +short int var15 /* : Bool */; +short int var17 /* : Bool */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var24 /* : Bool */; +short int var26 /* : Bool */; +short int var27 /* : Bool */; +short int var29 /* : Bool */; +short int var30 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwvar = p0; +var_n_id = p1; +var_n_type = p2; +var_n_assign = p3; +var_n_expr = p4; +var_n_annotations = p5; +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_kwvar].val = var_n_kwvar; /* _n_kwvar on */ +if (var_n_kwvar == NULL) { +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_n_kwvar,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = ((short int(*)(val* self, val* p0))(var_n_kwvar->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwvar, var_other); /* == on */ } var5 = !var4; var2 = var5; goto RET_LABEL3; RET_LABEL3:(void)0; } -var1 = var2; +var = var2; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_kwvar,self) on */ +var_n_kwvar->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL6:(void)0; } } } else { } -RET_LABEL:; +if (unlikely(var_n_id == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2532); +fatal_exit(1); } -/* method parser_prod#AIfExpr#visit_all for (self: AIfExpr, Visitor) */ -void nit__parser_prod___AIfExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TKwif */; -val* var1 /* : AExpr */; -val* var2 /* : nullable AExpr */; -val* var3 /* : nullable AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwif].val; /* _n_kwif on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2520); -show_backtrace(1); +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_id].val = var_n_id; /* _n_id on */ +if (var_n_id == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2533); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ +if (unlikely(var_n_id == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } -var1 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2521); -show_backtrace(1); } -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_type].val = var_n_type; /* _n_type on */ +if (var_n_type == NULL) { +var8 = 0; /* is null */ +} else { +var8 = 1; /* arg is null and recv is not */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val; /* _n_then on */ +if (0) { +{ /* Inline kernel#Object#!= (var_n_type,((val*)NULL)) on */ +var_other = ((val*)NULL); { -nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +var11 = ((short int(*)(val* self, val* p0))(var_n_type->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_type, var_other); /* == on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val; /* _n_else on */ -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +var12 = !var11; +var9 = var12; +goto RET_LABEL10; +RET_LABEL10:(void)0; } -RET_LABEL:; +var8 = var9; } -/* method parser_prod#AIfexprExpr#init_aifexprexpr for (self: AIfexprExpr, nullable TKwif, nullable AExpr, nullable TKwthen, nullable AExpr, nullable TKwelse, nullable AExpr) */ -void nit__parser_prod___AIfexprExpr___init_aifexprexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { -val* var_n_kwif /* var n_kwif: nullable TKwif */; -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_kwthen /* var n_kwthen: nullable TKwthen */; -val* var_n_then /* var n_then: nullable AExpr */; -val* var_n_kwelse /* var n_kwelse: nullable TKwelse */; -val* var_n_else /* var n_else: nullable AExpr */; -var_n_kwif = p0; -var_n_expr = p1; -var_n_kwthen = p2; -var_n_then = p3; -var_n_kwelse = p4; -var_n_else = p5; -if (unlikely(var_n_kwif == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2536); -show_backtrace(1); +if (var8){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ +var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL13:(void)0; } -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwif].val = var_n_kwif; /* _n_kwif on */ -if (var_n_kwif == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2537); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwif,self) on */ -if (unlikely(var_n_kwif == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); } -var_n_kwif->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +} else { } +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_assign].val = var_n_assign; /* _n_assign on */ +if (var_n_assign == NULL) { +var14 = 0; /* is null */ +} else { +var14 = 1; /* arg is null and recv is not */ } -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2538); -show_backtrace(1); +if (0) { +{ /* Inline kernel#Object#!= (var_n_assign,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var17 = ((short int(*)(val* self, val* p0))(var_n_assign->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_assign, var_other); /* == on */ } -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2539); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +var18 = !var17; +var15 = var18; +goto RET_LABEL16; +RET_LABEL16:(void)0; } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var14 = var15; } +if (var14){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ +var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL19:(void)0; } -if (unlikely(var_n_kwthen == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2540); -show_backtrace(1); } -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwthen].val = var_n_kwthen; /* _n_kwthen on */ -if (var_n_kwthen == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2541); -show_backtrace(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwthen,self) on */ -if (unlikely(var_n_kwthen == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwthen->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; } +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { +var20 = 0; /* is null */ +} else { +var20 = 1; /* arg is null and recv is not */ } -if (unlikely(var_n_then == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2542); -show_backtrace(1); +if (0) { +{ /* Inline kernel#Object#!= (var_n_expr,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var23 = ((short int(*)(val* self, val* p0))(var_n_expr->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_expr, var_other); /* == on */ } -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val = var_n_then; /* _n_then on */ -if (var_n_then == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2543); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_then,self) on */ -if (unlikely(var_n_then == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +var24 = !var23; +var21 = var24; +goto RET_LABEL22; +RET_LABEL22:(void)0; } -var_n_then->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL4:(void)0; +var20 = var21; } +if (var20){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL25:(void)0; } -if (unlikely(var_n_kwelse == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2544); -show_backtrace(1); } -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwelse].val = var_n_kwelse; /* _n_kwelse on */ -if (var_n_kwelse == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2545); -show_backtrace(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwelse,self) on */ -if (unlikely(var_n_kwelse == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); } -var_n_kwelse->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL5:(void)0; +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +if (var_n_annotations == NULL) { +var26 = 0; /* is null */ +} else { +var26 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var29 = ((short int(*)(val* self, val* p0))(var_n_annotations->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_annotations, var_other); /* == on */ } +var30 = !var29; +var27 = var30; +goto RET_LABEL28; +RET_LABEL28:(void)0; } -if (unlikely(var_n_else == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2546); -show_backtrace(1); +var26 = var27; } -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val = var_n_else; /* _n_else on */ -if (var_n_else == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2547); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_else,self) on */ -if (unlikely(var_n_else == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if (var26){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL31:(void)0; } -var_n_else->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; } +} else { } RET_LABEL:; } -/* method parser_prod#AIfexprExpr#replace_child for (self: AIfexprExpr, ANode, nullable ANode) */ -void nit__parser_prod___AIfexprExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AVardeclExpr#replace_child for (self: AVardeclExpr, ANode, nullable ANode) */ +void nit__parser_prod___AVardeclExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwif */; +val* var /* : nullable TKwvar */; short int var1 /* : Bool */; +short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; +short int var4 /* : Bool */; short int var6 /* : Bool */; +short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; +val* var8 /* : TId */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -val* var17 /* : TKwthen */; -short int var18 /* : Bool */; +short int var14 /* : Bool */; +int cltype15; +int idtype16; +const char* var_class_name17; +val* var18 /* : nullable AType */; +short int var19 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -const char* var_class_name26; -val* var27 /* : AExpr */; -short int var28 /* : Bool */; +short int var24 /* : Bool */; +short int var25 /* : Bool */; +int cltype26; +int idtype27; +const char* var_class_name28; +val* var29 /* : nullable TAssign */; short int var30 /* : Bool */; -short int var32 /* : Bool */; +short int var31 /* : Bool */; short int var33 /* : Bool */; -int cltype34; -int idtype35; -const char* var_class_name36; -val* var37 /* : TKwelse */; -short int var38 /* : Bool */; -short int var40 /* : Bool */; +short int var35 /* : Bool */; +short int var36 /* : Bool */; +int cltype37; +int idtype38; +const char* var_class_name39; +val* var40 /* : nullable AExpr */; +short int var41 /* : Bool */; short int var42 /* : Bool */; -short int var43 /* : Bool */; -int cltype44; -int idtype45; -const char* var_class_name46; -val* var47 /* : AExpr */; -short int var48 /* : Bool */; -short int var50 /* : Bool */; +short int var44 /* : Bool */; +short int var46 /* : Bool */; +short int var47 /* : Bool */; +int cltype48; +int idtype49; +const char* var_class_name50; +val* var51 /* : nullable AAnnotations */; short int var52 /* : Bool */; short int var53 /* : Bool */; -int cltype54; -int idtype55; -const char* var_class_name56; +short int var55 /* : Bool */; +short int var57 /* : Bool */; +short int var58 /* : Bool */; +int cltype59; +int idtype60; +const char* var_class_name61; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwif].val; /* _n_kwif on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2552); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_kwvar].val; /* _n_kwvar 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 */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var6 = var == var_other; +var4 = var6; +goto RET_LABEL5; +RET_LABEL5:(void)0; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var2 = var4; +goto RET_LABEL3; +RET_LABEL3:(void)0; } +var1 = var2; } if (var1){ -/* isa TKwif */ -cltype = type_nit__TKwif.color; -idtype = type_nit__TKwif.id; +/* isa nullable TKwvar */ +cltype = type_nullable__nit__TKwvar.color; +idtype = type_nullable__nit__TKwvar.id; if(var_new_child == NULL) { -var6 = 0; +var7 = 1; } else { if(cltype >= var_new_child->type->table_size) { -var6 = 0; +var7 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var7 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var6)) { +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`", "TKwif", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2553); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwvar", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2547); +fatal_exit(1); } { -nit__parser_prod___AIfexprExpr___n_kwif_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_kwif= on */ +nit__parser_prod___AVardeclExpr___n_kwvar_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_kwvar= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2556); -show_backtrace(1); +var8 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_id].val; /* _n_id on */ +if (unlikely(var8 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2550); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +var13 = var8 == var_other; +var11 = var13; +goto RET_LABEL12; +RET_LABEL12:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var9 = var11; +goto RET_LABEL10; +RET_LABEL10:(void)0; } } -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +if (var9){ +/* isa TId */ +cltype15 = type_nit__TId.color; +idtype16 = type_nit__TId.id; if(var_new_child == NULL) { -var13 = 0; +var14 = 0; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype15 >= var_new_child->type->table_size) { +var14 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var14 = var_new_child->type->type_table[cltype15] == idtype16; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2557); -show_backtrace(1); +if (unlikely(!var14)) { +var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name17); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2551); +fatal_exit(1); } { -nit__parser_prod___AIfexprExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_expr= on */ +nit__parser_prod___AVardeclExpr___n_id_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_id= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwthen].val; /* _n_kwthen on */ -if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwthen"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2560); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var17,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ -var22 = var17 == var_other; -var20 = var22; -goto RET_LABEL21; -RET_LABEL21:(void)0; -} -} -var18 = var20; -goto RET_LABEL19; -RET_LABEL19:(void)0; -} -} -if (var18){ -/* isa TKwthen */ -cltype24 = type_nit__TKwthen.color; -idtype25 = type_nit__TKwthen.id; -if(var_new_child == NULL) { -var23 = 0; -} else { -if(cltype24 >= var_new_child->type->table_size) { -var23 = 0; -} else { -var23 = var_new_child->type->type_table[cltype24] == idtype25; -} -} -if (unlikely(!var23)) { -var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwthen", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2561); -show_backtrace(1); -} -{ -nit__parser_prod___AIfexprExpr___n_kwthen_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_kwthen= on */ -} -goto RET_LABEL; +var18 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_type].val; /* _n_type on */ +if (var18 == NULL) { +var19 = 0; /* cannot be null */ } else { -} -var27 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val; /* _n_then on */ -if (unlikely(var27 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_then"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2564); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var27,var_old_child) on */ +{ /* Inline kernel#Object#== (var18,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ -var32 = var27 == var_other; -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; +{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ +var24 = var18 == var_other; +var22 = var24; +goto RET_LABEL23; +RET_LABEL23:(void)0; } } -var28 = var30; -goto RET_LABEL29; -RET_LABEL29:(void)0; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } +var19 = var20; } -if (var28){ -/* isa AExpr */ -cltype34 = type_nit__AExpr.color; -idtype35 = type_nit__AExpr.id; +if (var19){ +/* isa nullable AType */ +cltype26 = type_nullable__nit__AType.color; +idtype27 = type_nullable__nit__AType.id; if(var_new_child == NULL) { -var33 = 0; +var25 = 1; } else { -if(cltype34 >= var_new_child->type->table_size) { -var33 = 0; +if(cltype26 >= var_new_child->type->table_size) { +var25 = 0; } else { -var33 = var_new_child->type->type_table[cltype34] == idtype35; +var25 = var_new_child->type->type_table[cltype26] == idtype27; } } -if (unlikely(!var33)) { -var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2565); -show_backtrace(1); +if (unlikely(!var25)) { +var_class_name28 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name28); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2555); +fatal_exit(1); } { -nit__parser_prod___AIfexprExpr___n_then_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_then= on */ +nit__parser_prod___AVardeclExpr___n_type_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_type= on */ } goto RET_LABEL; } else { } -var37 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwelse].val; /* _n_kwelse on */ -if (unlikely(var37 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwelse"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2568); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var37,var_old_child) on */ +var29 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_assign].val; /* _n_assign on */ +if (var29 == NULL) { +var30 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var29,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var37,var_other) on */ -var42 = var37 == var_other; -var40 = var42; -goto RET_LABEL41; -RET_LABEL41:(void)0; +{ /* Inline kernel#Object#is_same_instance (var29,var_other) on */ +var35 = var29 == var_other; +var33 = var35; +goto RET_LABEL34; +RET_LABEL34:(void)0; } } -var38 = var40; -goto RET_LABEL39; -RET_LABEL39:(void)0; +var31 = var33; +goto RET_LABEL32; +RET_LABEL32:(void)0; } +var30 = var31; } -if (var38){ -/* isa TKwelse */ -cltype44 = type_nit__TKwelse.color; -idtype45 = type_nit__TKwelse.id; +if (var30){ +/* isa nullable TAssign */ +cltype37 = type_nullable__nit__TAssign.color; +idtype38 = type_nullable__nit__TAssign.id; if(var_new_child == NULL) { -var43 = 0; +var36 = 1; } else { -if(cltype44 >= var_new_child->type->table_size) { -var43 = 0; +if(cltype37 >= var_new_child->type->table_size) { +var36 = 0; } else { -var43 = var_new_child->type->type_table[cltype44] == idtype45; +var36 = var_new_child->type->type_table[cltype37] == idtype38; } } -if (unlikely(!var43)) { -var_class_name46 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwelse", var_class_name46); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2569); -show_backtrace(1); +if (unlikely(!var36)) { +var_class_name39 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TAssign", var_class_name39); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2559); +fatal_exit(1); } { -nit__parser_prod___AIfexprExpr___n_kwelse_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_kwelse= on */ +nit__parser_prod___AVardeclExpr___n_assign_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_assign= on */ } goto RET_LABEL; } else { } -var47 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val; /* _n_else on */ -if (unlikely(var47 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_else"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2572); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var47,var_old_child) on */ +var40 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val; /* _n_expr on */ +if (var40 == NULL) { +var41 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var40,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var47,var_other) on */ -var52 = var47 == var_other; -var50 = var52; -goto RET_LABEL51; -RET_LABEL51:(void)0; +{ /* Inline kernel#Object#is_same_instance (var40,var_other) on */ +var46 = var40 == var_other; +var44 = var46; +goto RET_LABEL45; +RET_LABEL45:(void)0; } } -var48 = var50; -goto RET_LABEL49; -RET_LABEL49:(void)0; +var42 = var44; +goto RET_LABEL43; +RET_LABEL43:(void)0; } +var41 = var42; } -if (var48){ -/* isa AExpr */ -cltype54 = type_nit__AExpr.color; -idtype55 = type_nit__AExpr.id; +if (var41){ +/* isa nullable AExpr */ +cltype48 = type_nullable__nit__AExpr.color; +idtype49 = type_nullable__nit__AExpr.id; if(var_new_child == NULL) { -var53 = 0; +var47 = 1; } else { -if(cltype54 >= var_new_child->type->table_size) { -var53 = 0; +if(cltype48 >= var_new_child->type->table_size) { +var47 = 0; } else { -var53 = var_new_child->type->type_table[cltype54] == idtype55; +var47 = var_new_child->type->type_table[cltype48] == idtype49; } } -if (unlikely(!var53)) { -var_class_name56 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name56); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2573); -show_backtrace(1); +if (unlikely(!var47)) { +var_class_name50 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name50); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2563); +fatal_exit(1); } { -nit__parser_prod___AIfexprExpr___n_else_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_else= on */ +nit__parser_prod___AVardeclExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_expr= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AIfexprExpr#n_kwif= for (self: AIfexprExpr, TKwif) */ -void nit__parser_prod___AIfexprExpr___n_kwif_61d(val* self, val* p0) { -val* var_node /* var node: TKwif */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwif].val = var_node; /* _n_kwif on */ +var51 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var51 == NULL) { +var52 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var51,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#is_same_instance (var51,var_other) on */ +var57 = var51 == var_other; +var55 = var57; +goto RET_LABEL56; +RET_LABEL56:(void)0; } } -RET_LABEL:; +var53 = var55; +goto RET_LABEL54; +RET_LABEL54:(void)0; } -/* method parser_prod#AIfexprExpr#n_expr= for (self: AIfexprExpr, AExpr) */ -void nit__parser_prod___AIfexprExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var52 = var53; +} +if (var52){ +/* isa nullable AAnnotations */ +cltype59 = type_nullable__nit__AAnnotations.color; +idtype60 = type_nullable__nit__AAnnotations.id; +if(var_new_child == NULL) { +var58 = 1; +} else { +if(cltype59 >= var_new_child->type->table_size) { +var58 = 0; +} else { +var58 = var_new_child->type->type_table[cltype59] == idtype60; } } -RET_LABEL:; +if (unlikely(!var58)) { +var_class_name61 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name61); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2567); +fatal_exit(1); } -/* method parser_prod#AIfexprExpr#n_kwthen= for (self: AIfexprExpr, TKwthen) */ -void nit__parser_prod___AIfexprExpr___n_kwthen_61d(val* self, val* p0) { -val* var_node /* var node: TKwthen */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwthen].val = var_node; /* _n_kwthen on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +nit__parser_prod___AVardeclExpr___nit__parser_nodes__Prod__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AVardeclExpr#n_annotations= on */ } +goto RET_LABEL; +} else { } RET_LABEL:; } -/* method parser_prod#AIfexprExpr#n_then= for (self: AIfexprExpr, AExpr) */ -void nit__parser_prod___AIfexprExpr___n_then_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AVardeclExpr#n_kwvar= for (self: AVardeclExpr, nullable TKwvar) */ +void nit__parser_prod___AVardeclExpr___n_kwvar_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwvar */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val = var_node; /* _n_then on */ +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_kwvar].val = var_node; /* _n_kwvar on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -RET_LABEL:; +var = var1; } -/* method parser_prod#AIfexprExpr#n_kwelse= for (self: AIfexprExpr, TKwelse) */ -void nit__parser_prod___AIfexprExpr___n_kwelse_61d(val* self, val* p0) { -val* var_node /* var node: TKwelse */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwelse].val = var_node; /* _n_kwelse on */ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#AIfexprExpr#n_else= for (self: AIfexprExpr, AExpr) */ -void nit__parser_prod___AIfexprExpr___n_else_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AVardeclExpr#n_id= for (self: AVardeclExpr, TId) */ +void nit__parser_prod___AVardeclExpr___n_id_61d(val* self, val* p0) { +val* var_node /* var node: TId */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val = var_node; /* _n_else on */ +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_id].val = var_node; /* _n_id on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AIfexprExpr#visit_all for (self: AIfexprExpr, Visitor) */ -void nit__parser_prod___AIfexprExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TKwif */; -val* var1 /* : AExpr */; -val* var2 /* : TKwthen */; -val* var3 /* : AExpr */; -val* var4 /* : TKwelse */; -val* var5 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwif].val; /* _n_kwif on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2612); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2613); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var2 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwthen].val; /* _n_kwthen on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwthen"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2614); -show_backtrace(1); +/* method parser_prod#AVardeclExpr#n_type= for (self: AVardeclExpr, nullable AType) */ +void nit__parser_prod___AVardeclExpr___n_type_61d(val* self, val* p0) { +val* var_node /* var node: nullable AType */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_type].val = var_node; /* _n_type on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var3 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val; /* _n_then on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_then"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2615); -show_backtrace(1); +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var4 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwelse].val; /* _n_kwelse on */ -if (unlikely(var4 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwelse"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2616); -show_backtrace(1); +var = var1; } +if (var){ { -nit___nit__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_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } -var5 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val; /* _n_else on */ -if (unlikely(var5 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_else"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2617); -show_backtrace(1); } -{ -nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ +} else { } RET_LABEL:; } -/* method parser_prod#AWhileExpr#init_awhileexpr for (self: AWhileExpr, nullable TKwwhile, nullable AExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */ -void nit__parser_prod___AWhileExpr___init_awhileexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { -val* var_n_kwwhile /* var n_kwwhile: nullable TKwwhile */; -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_kwdo /* var n_kwdo: nullable TKwdo */; -val* var_n_block /* var n_block: nullable AExpr */; -val* var_n_label /* var n_label: nullable ALabel */; -val* var /* : null */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; +/* method parser_prod#AVardeclExpr#n_assign= for (self: AVardeclExpr, nullable TAssign) */ +void nit__parser_prod___AVardeclExpr___n_assign_61d(val* self, val* p0) { +val* var_node /* var node: nullable TAssign */; +short int var /* : Bool */; +short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var7 /* : Bool */; -short int var8 /* : Bool */; -val* var10 /* : null */; -short int var11 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -var_n_kwwhile = p0; -var_n_expr = p1; -var_n_kwdo = p2; -var_n_block = p3; -var_n_label = p4; -if (unlikely(var_n_kwwhile == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2629); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwwhile].val = var_n_kwwhile; /* _n_kwwhile on */ -if (var_n_kwwhile == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2630); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwwhile,self) on */ -if (unlikely(var_n_kwwhile == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwwhile->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2631); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2632); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -if (unlikely(var_n_kwdo == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2633); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwdo].val = var_n_kwdo; /* _n_kwdo on */ -if (var_n_kwdo == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2634); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on */ -if (unlikely(var_n_kwdo == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwdo->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; -} -} -self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val = var_n_block; /* _n_block on */ -var = NULL; -if (var_n_block == NULL) { -var4 = 0; /* is null */ +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_assign].val = var_node; /* _n_assign on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { -var4 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_block,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var7 = ((short int (*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var8 = !var7; -var5 = var8; -goto RET_LABEL6; -RET_LABEL6:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var4 = var5; +var = var1; } -if (var4){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ -var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL9:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ -var10 = NULL; -if (var_n_label == NULL) { -var11 = 0; /* is null */ +RET_LABEL:; +} +/* method parser_prod#AVardeclExpr#n_expr= for (self: AVardeclExpr, nullable AExpr) */ +void nit__parser_prod___AVardeclExpr___n_expr_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val = var_node; /* _n_expr on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { -var11 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_label,var10) on */ -var_other = var10; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var14 = ((short int (*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var15 = !var14; -var12 = var15; -goto RET_LABEL13; -RET_LABEL13:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var11 = var12; +var = var1; } -if (var11){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ -var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL16:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AWhileExpr#replace_child for (self: AWhileExpr, ANode, nullable ANode) */ -void nit__parser_prod___AWhileExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwwhile */; +/* method parser_prod#AVardeclExpr#n_annotations= for (self: AVardeclExpr, nullable AAnnotations) */ +void nit__parser_prod___AVardeclExpr___nit__parser_nodes__Prod__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +short int var /* : Bool */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -val* var17 /* : TKwdo */; -short int var18 /* : Bool */; -short int var20 /* : Bool */; -short int var22 /* : Bool */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -const char* var_class_name26; -val* var27 /* : nullable AExpr */; -short int var28 /* : Bool */; -short int var29 /* : Bool */; -short int var31 /* : Bool */; -short int var33 /* : Bool */; -short int var34 /* : Bool */; -int cltype35; -int idtype36; -const char* var_class_name37; -val* var38 /* : nullable ALabel */; -short int var39 /* : Bool */; -short int var40 /* : Bool */; -short int var42 /* : Bool */; -short int var44 /* : Bool */; -short int var45 /* : Bool */; -int cltype46; -int idtype47; -const char* var_class_name48; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwwhile].val; /* _n_kwwhile on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwwhile"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2643); -show_backtrace(1); +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var1 = var3; +var4 = !var3; +var1 = var4; goto RET_LABEL2; RET_LABEL2:(void)0; } +var = var1; } -if (var1){ -/* isa TKwwhile */ -cltype = type_nit__TKwwhile.color; -idtype = type_nit__TKwwhile.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwwhile", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2644); -show_backtrace(1); +} else { } +RET_LABEL:; +} +/* method parser_prod#AVardeclExpr#visit_all for (self: AVardeclExpr, Visitor) */ +void nit__parser_prod___AVardeclExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : nullable TKwvar */; +val* var1 /* : TId */; +val* var2 /* : nullable AType */; +val* var3 /* : nullable TAssign */; +val* var4 /* : nullable AExpr */; +val* var5 /* : nullable AAnnotations */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_kwvar].val; /* _n_kwvar on */ { -nit__parser_prod___AWhileExpr___n_kwwhile_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_kwwhile= on */ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -goto RET_LABEL; -} else { +var1 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_id].val; /* _n_id on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2607); +fatal_exit(1); } -var7 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2647); -show_backtrace(1); +{ +nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_type].val; /* _n_type on */ { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_assign].val; /* _n_assign on */ { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var4 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val; /* _n_expr on */ +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var5 = self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ } +RET_LABEL:; } -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +/* method parser_prod#AReturnExpr#init_areturnexpr for (self: AReturnExpr, nullable TKwreturn, nullable AExpr) */ +void nit__parser_prod___AReturnExpr___init_areturnexpr(val* self, val* p0, val* p1) { +val* var_n_kwreturn /* var n_kwreturn: nullable TKwreturn */; +val* var_n_expr /* var n_expr: nullable AExpr */; +short int var /* : Bool */; +short int var2 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var4 /* : Bool */; +short int var5 /* : Bool */; +short int var7 /* : Bool */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var11 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2648); -show_backtrace(1); +var_n_kwreturn = p0; +var_n_expr = p1; +self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_kwreturn].val = var_n_kwreturn; /* _n_kwreturn on */ +if (var_n_kwreturn == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_n_kwreturn,((val*)NULL)) on */ +var_other = ((val*)NULL); { -nit__parser_prod___AWhileExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_expr= on */ +var4 = ((short int(*)(val* self, val* p0))(var_n_kwreturn->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwreturn, var_other); /* == on */ } -goto RET_LABEL; -} else { +var5 = !var4; +var2 = var5; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -var17 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwdo].val; /* _n_kwdo on */ -if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2651); -show_backtrace(1); +var = var2; } +if (var){ { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ -var22 = var17 == var_other; -var20 = var22; -goto RET_LABEL21; -RET_LABEL21:(void)0; -} -} -var18 = var20; -goto RET_LABEL19; -RET_LABEL19:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_kwreturn,self) on */ +var_n_kwreturn->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL6:(void)0; } } -if (var18){ -/* isa TKwdo */ -cltype24 = type_nit__TKwdo.color; -idtype25 = type_nit__TKwdo.id; -if(var_new_child == NULL) { -var23 = 0; } else { -if(cltype24 >= var_new_child->type->table_size) { -var23 = 0; +} +self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { +var7 = 0; /* is null */ } else { -var23 = var_new_child->type->type_table[cltype24] == idtype25; +var7 = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_n_expr,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var10 = ((short int(*)(val* self, val* p0))(var_n_expr->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_expr, var_other); /* == on */ } -if (unlikely(!var23)) { -var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwdo", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2652); -show_backtrace(1); +var11 = !var10; +var8 = var11; +goto RET_LABEL9; +RET_LABEL9:(void)0; +} +var7 = var8; } +if (var7){ { -nit__parser_prod___AWhileExpr___n_kwdo_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_kwdo= on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL12:(void)0; +} } -goto RET_LABEL; } else { } -var27 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val; /* _n_block on */ -if (var27 == NULL) { -var28 = 0; /* cannot be null */ +RET_LABEL:; +} +/* method parser_prod#AReturnExpr#replace_child for (self: AReturnExpr, ANode, nullable ANode) */ +void nit__parser_prod___AReturnExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : nullable TKwreturn */; +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 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_nit__parser_nodes__AReturnExpr___n_kwreturn].val; /* _n_kwreturn on */ +if (var == NULL) { +var1 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var27,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ -var33 = var27 == var_other; -var31 = var33; -goto RET_LABEL32; -RET_LABEL32:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var6 = var == var_other; +var4 = var6; +goto RET_LABEL5; +RET_LABEL5:(void)0; } } -var29 = var31; -goto RET_LABEL30; -RET_LABEL30:(void)0; +var2 = var4; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -var28 = var29; +var1 = var2; } -if (var28){ -/* isa nullable AExpr */ -cltype35 = type_nullable__nit__AExpr.color; -idtype36 = type_nullable__nit__AExpr.id; +if (var1){ +/* isa nullable TKwreturn */ +cltype = type_nullable__nit__TKwreturn.color; +idtype = type_nullable__nit__TKwreturn.id; if(var_new_child == NULL) { -var34 = 1; +var7 = 1; } else { -if(cltype35 >= var_new_child->type->table_size) { -var34 = 0; +if(cltype >= var_new_child->type->table_size) { +var7 = 0; } else { -var34 = var_new_child->type->type_table[cltype35] == idtype36; +var7 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var34)) { -var_class_name37 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name37); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2656); -show_backtrace(1); +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 TKwreturn", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2629); +fatal_exit(1); } { -nit__parser_prod___AWhileExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_block= on */ +nit__parser_prod___AReturnExpr___n_kwreturn_61d(self, var_new_child); /* Direct call parser_prod#AReturnExpr#n_kwreturn= on */ } goto RET_LABEL; } else { } -var38 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ -if (var38 == NULL) { -var39 = 0; /* cannot be null */ +var8 = self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val; /* _n_expr on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var38,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var38,var_other) on */ -var44 = var38 == var_other; -var42 = var44; -goto RET_LABEL43; -RET_LABEL43:(void)0; +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +var14 = var8 == var_other; +var12 = var14; +goto RET_LABEL13; +RET_LABEL13:(void)0; } } -var40 = var42; -goto RET_LABEL41; -RET_LABEL41:(void)0; +var10 = var12; +goto RET_LABEL11; +RET_LABEL11:(void)0; } -var39 = var40; +var9 = var10; } -if (var39){ -/* isa nullable ALabel */ -cltype46 = type_nullable__nit__ALabel.color; -idtype47 = type_nullable__nit__ALabel.id; +if (var9){ +/* isa nullable AExpr */ +cltype16 = type_nullable__nit__AExpr.color; +idtype17 = type_nullable__nit__AExpr.id; if(var_new_child == NULL) { -var45 = 1; +var15 = 1; } else { -if(cltype46 >= var_new_child->type->table_size) { -var45 = 0; +if(cltype16 >= var_new_child->type->table_size) { +var15 = 0; } else { -var45 = var_new_child->type->type_table[cltype46] == idtype47; +var15 = var_new_child->type->type_table[cltype16] == idtype17; } } -if (unlikely(!var45)) { -var_class_name48 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name48); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2660); -show_backtrace(1); +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 AExpr", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2633); +fatal_exit(1); } { -nit__parser_prod___AWhileExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_label= on */ +nit__parser_prod___AReturnExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AReturnExpr#n_expr= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AWhileExpr#n_kwwhile= for (self: AWhileExpr, TKwwhile) */ -void nit__parser_prod___AWhileExpr___n_kwwhile_61d(val* self, val* p0) { -val* var_node /* var node: TKwwhile */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwwhile].val = var_node; /* _n_kwwhile on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AWhileExpr#n_expr= for (self: AWhileExpr, AExpr) */ -void nit__parser_prod___AWhileExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AWhileExpr#n_kwdo= for (self: AWhileExpr, TKwdo) */ -void nit__parser_prod___AWhileExpr___n_kwdo_61d(val* self, val* p0) { -val* var_node /* var node: TKwdo */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwdo].val = var_node; /* _n_kwdo on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AWhileExpr#n_block= for (self: AWhileExpr, nullable AExpr) */ -void nit__parser_prod___AWhileExpr___n_block_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; +/* method parser_prod#AReturnExpr#n_kwreturn= for (self: AReturnExpr, nullable TKwreturn) */ +void nit__parser_prod___AReturnExpr___n_kwreturn_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwreturn */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val = var_node; /* _n_block on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_kwreturn].val = var_node; /* _n_kwreturn on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AWhileExpr#n_label= for (self: AWhileExpr, nullable ALabel) */ -void nit__parser_prod___AWhileExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { -val* var_node /* var node: nullable ALabel */; -val* var /* : null */; +/* method parser_prod#AReturnExpr#n_expr= for (self: AReturnExpr, nullable AExpr) */ +void nit__parser_prod___AReturnExpr___n_expr_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val = var_node; /* _n_expr on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AWhileExpr#visit_all for (self: AWhileExpr, Visitor) */ -void nit__parser_prod___AWhileExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AReturnExpr#visit_all for (self: AReturnExpr, Visitor) */ +void nit__parser_prod___AReturnExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TKwwhile */; -val* var1 /* : AExpr */; -val* var2 /* : TKwdo */; -val* var3 /* : nullable AExpr */; -val* var4 /* : nullable ALabel */; +val* var /* : nullable TKwreturn */; +val* var1 /* : nullable AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwwhile].val; /* _n_kwwhile on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwwhile"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2694); -show_backtrace(1); -} +var = self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_kwreturn].val; /* _n_kwreturn on */ { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2695); -show_backtrace(1); -} +var1 = self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val; /* _n_expr on */ { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwdo].val; /* _n_kwdo on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2696); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var3 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val; /* _n_block on */ -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var4 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ -{ -nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#ALoopExpr#init_aloopexpr for (self: ALoopExpr, nullable TKwloop, nullable AExpr, nullable ALabel) */ -void nit__parser_prod___ALoopExpr___init_aloopexpr(val* self, val* p0, val* p1, val* p2) { -val* var_n_kwloop /* var n_kwloop: nullable TKwloop */; -val* var_n_block /* var n_block: nullable AExpr */; +/* method parser_prod#ABreakExpr#init_abreakexpr for (self: ABreakExpr, nullable TKwbreak, nullable ALabel) */ +void nit__parser_prod___ABreakExpr___init_abreakexpr(val* self, val* p0, val* p1) { +val* var_n_kwbreak /* var n_kwbreak: nullable TKwbreak */; val* var_n_label /* var n_label: nullable ALabel */; -val* var /* : null */; -short int var2 /* : Bool */; +short int var /* : Bool */; short int var3 /* : Bool */; val* var_other /* var other: nullable Object */; short int var5 /* : Bool */; short int var6 /* : Bool */; -val* var8 /* : null */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -var_n_kwloop = p0; -var_n_block = p1; -var_n_label = p2; -if (unlikely(var_n_kwloop == NULL)) { +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwbreak = p0; +var_n_label = p1; +if (unlikely(var_n_kwbreak == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2708); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2662); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop].val = var_n_kwloop; /* _n_kwloop on */ -if (var_n_kwloop == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak].val = var_n_kwbreak; /* _n_kwbreak on */ +if (var_n_kwbreak == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2709); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2663); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwloop,self) on */ -if (unlikely(var_n_kwloop == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwbreak,self) on */ +if (unlikely(var_n_kwbreak == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwloop->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val = var_n_block; /* _n_block on */ -var = NULL; -if (var_n_block == NULL) { -var2 = 0; /* is null */ -} else { -var2 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_block,var) on */ -var_other = var; -{ -var5 = ((short int (*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other) /* == on */; -} -var6 = !var5; -var3 = var6; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} -var2 = var3; -} -if (var2){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ -var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL7:(void)0; +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_kwbreak->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -} else { } -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ -var8 = NULL; +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ if (var_n_label == NULL) { -var9 = 0; /* is null */ +var = 0; /* is null */ } else { -var9 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_label,var8) on */ -var_other = var8; +{ /* Inline kernel#Object#!= (var_n_label,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var12 = ((short int (*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other) /* == on */; +var5 = ((short int(*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other); /* == on */ } -var13 = !var12; -var10 = var13; -goto RET_LABEL11; -RET_LABEL11:(void)0; +var6 = !var5; +var3 = var6; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var9 = var10; +var = var3; } -if (var9){ +if (var){ { { /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL14:(void)0; +RET_LABEL7:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#ALoopExpr#replace_child for (self: ALoopExpr, ANode, nullable ANode) */ -void nit__parser_prod___ALoopExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ABreakExpr#replace_child for (self: ABreakExpr, ANode, nullable ANode) */ +void nit__parser_prod___ABreakExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwloop */; +val* var /* : TKwbreak */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -7727,7 +7806,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : nullable AExpr */; +val* var7 /* : nullable ALabel */; short int var8 /* : Bool */; short int var9 /* : Bool */; short int var11 /* : Bool */; @@ -7736,28 +7815,19 @@ short int var14 /* : Bool */; int cltype15; int idtype16; const char* var_class_name17; -val* var18 /* : nullable ALabel */; -short int var19 /* : Bool */; -short int var20 /* : Bool */; -short int var22 /* : Bool */; -short int var24 /* : Bool */; -short int var25 /* : Bool */; -int cltype26; -int idtype27; -const char* var_class_name28; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop].val; /* _n_kwloop on */ +var = self->attrs[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak].val; /* _n_kwbreak on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwloop"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2718); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwbreak"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2670); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -7770,9 +7840,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwloop */ -cltype = type_nit__TKwloop.color; -idtype = type_nit__TKwloop.id; +/* isa TKwbreak */ +cltype = type_nit__TKwbreak.color; +idtype = type_nit__TKwbreak.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -7784,24 +7854,24 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwloop", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2719); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwbreak", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2671); +fatal_exit(1); } { -nit__parser_prod___ALoopExpr___n_kwloop_61d(self, var_new_child); /* Direct call parser_prod#ALoopExpr#n_kwloop= on */ +nit__parser_prod___ABreakExpr___n_kwbreak_61d(self, var_new_child); /* Direct call parser_prod#ABreakExpr#n_kwbreak= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val; /* _n_block on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ if (var7 == NULL) { var8 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var13 = var7 == var_other; var11 = var13; goto RET_LABEL12; @@ -7815,9 +7885,9 @@ RET_LABEL10:(void)0; var8 = var9; } if (var8){ -/* isa nullable AExpr */ -cltype15 = type_nullable__nit__AExpr.color; -idtype16 = type_nullable__nit__AExpr.id; +/* isa nullable ALabel */ +cltype15 = type_nullable__nit__ALabel.color; +idtype16 = type_nullable__nit__ALabel.id; if(var_new_child == NULL) { var14 = 1; } else { @@ -7829,354 +7899,128 @@ var14 = var_new_child->type->type_table[cltype15] == idtype16; } if (unlikely(!var14)) { var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name17); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2723); -show_backtrace(1); -} -{ -nit__parser_prod___ALoopExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#ALoopExpr#n_block= on */ -} -goto RET_LABEL; -} else { -} -var18 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ -if (var18 == NULL) { -var19 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var18,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ -var24 = var18 == var_other; -var22 = var24; -goto RET_LABEL23; -RET_LABEL23:(void)0; -} -} -var20 = var22; -goto RET_LABEL21; -RET_LABEL21:(void)0; -} -var19 = var20; -} -if (var19){ -/* isa nullable ALabel */ -cltype26 = type_nullable__nit__ALabel.color; -idtype27 = type_nullable__nit__ALabel.id; -if(var_new_child == NULL) { -var25 = 1; -} else { -if(cltype26 >= var_new_child->type->table_size) { -var25 = 0; -} else { -var25 = var_new_child->type->type_table[cltype26] == idtype27; -} -} -if (unlikely(!var25)) { -var_class_name28 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name28); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2727); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name17); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2675); +fatal_exit(1); } { -nit__parser_prod___ALoopExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#ALoopExpr#n_label= on */ +nit__parser_prod___ABreakExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#ABreakExpr#n_label= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ALoopExpr#n_kwloop= for (self: ALoopExpr, TKwloop) */ -void nit__parser_prod___ALoopExpr___n_kwloop_61d(val* self, val* p0) { -val* var_node /* var node: TKwloop */; +/* method parser_prod#ABreakExpr#n_kwbreak= for (self: ABreakExpr, TKwbreak) */ +void nit__parser_prod___ABreakExpr___n_kwbreak_61d(val* self, val* p0) { +val* var_node /* var node: TKwbreak */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop].val = var_node; /* _n_kwloop on */ +self->attrs[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak].val = var_node; /* _n_kwbreak on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ALoopExpr#n_block= for (self: ALoopExpr, nullable AExpr) */ -void nit__parser_prod___ALoopExpr___n_block_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val = var_node; /* _n_block on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; -{ -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; -} -} -} else { -} -RET_LABEL:; -} -/* method parser_prod#ALoopExpr#n_label= for (self: ALoopExpr, nullable ALabel) */ -void nit__parser_prod___ALoopExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { +/* method parser_prod#ABreakExpr#n_label= for (self: ABreakExpr, nullable ALabel) */ +void nit__parser_prod___ABreakExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { val* var_node /* var node: nullable ALabel */; -val* var /* : null */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#ALoopExpr#visit_all for (self: ALoopExpr, Visitor) */ -void nit__parser_prod___ALoopExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ABreakExpr#visit_all for (self: ABreakExpr, Visitor) */ +void nit__parser_prod___ABreakExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TKwloop */; -val* var1 /* : nullable AExpr */; -val* var2 /* : nullable ALabel */; +val* var /* : TKwbreak */; +val* var1 /* : nullable ALabel */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop].val; /* _n_kwloop on */ +var = self->attrs[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak].val; /* _n_kwbreak on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwloop"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2751); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwbreak"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2694); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val; /* _n_block on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ -{ -nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#AForExpr#init_aforexpr for (self: AForExpr, nullable TKwfor, Collection[Object], nullable AExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */ -void nit__parser_prod___AForExpr___init_aforexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { -val* var_n_kwfor /* var n_kwfor: nullable TKwfor */; -val* var_n_ids /* var n_ids: Collection[Object] */; -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_kwdo /* var n_kwdo: nullable TKwdo */; -val* var_n_block /* var n_block: nullable AExpr */; -val* var_n_label /* var n_label: nullable ALabel */; -val* var /* : ANodes[TId] */; -val* var3 /* : ANodes[TId] */; -val* var6 /* : null */; -short int var7 /* : Bool */; -short int var8 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var10 /* : Bool */; -short int var11 /* : Bool */; -val* var13 /* : null */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -short int var17 /* : Bool */; -short int var18 /* : Bool */; -var_n_kwfor = p0; -var_n_ids = p1; -var_n_expr = p2; -var_n_kwdo = p3; -var_n_block = p4; -var_n_label = p5; -if (unlikely(var_n_kwfor == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2766); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwfor].val = var_n_kwfor; /* _n_kwfor on */ -if (var_n_kwfor == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2767); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwfor,self) on */ -if (unlikely(var_n_kwfor == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwfor->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -{ -{ /* Inline parser_nodes#AForExpr#n_ids (self) on */ -var3 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_ids].val; /* _n_ids on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ids"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1735); -show_backtrace(1); -} -var = var3; -RET_LABEL2:(void)0; -} -} -{ -nit___nit__ANodes___unsafe_add_all(var, var_n_ids); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ -} -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2769); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2770); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL4:(void)0; -} -} -if (unlikely(var_n_kwdo == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2771); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwdo].val = var_n_kwdo; /* _n_kwdo on */ -if (var_n_kwdo == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2772); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on */ -if (unlikely(var_n_kwdo == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_kwdo->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL5:(void)0; -} -} -self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val = var_n_block; /* _n_block on */ -var6 = NULL; -if (var_n_block == NULL) { -var7 = 0; /* is null */ -} else { -var7 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_block,var6) on */ -var_other = var6; -{ -var10 = ((short int (*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other) /* == on */; -} -var11 = !var10; -var8 = var11; -goto RET_LABEL9; -RET_LABEL9:(void)0; -} -var7 = var8; -} -if (var7){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ -var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL12:(void)0; -} -} -} else { -} -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ -var13 = NULL; -if (var_n_label == NULL) { -var14 = 0; /* is null */ -} else { -var14 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_label,var13) on */ -var_other = var13; +/* method parser_prod#AAbortExpr#init_aabortexpr for (self: AAbortExpr, nullable TKwabort) */ +void nit__parser_prod___AAbortExpr___init_aabortexpr(val* self, val* p0) { +val* var_n_kwabort /* var n_kwabort: nullable TKwabort */; { -var17 = ((short int (*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other) /* == on */; -} -var18 = !var17; -var15 = var18; -goto RET_LABEL16; -RET_LABEL16:(void)0; -} -var14 = var15; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -if (var14){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ -var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL19:(void)0; } +var_n_kwabort = p0; +if (unlikely(var_n_kwabort == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2703); +fatal_exit(1); } +self->attrs[COLOR_nit__parser_nodes__AAbortExpr___n_kwabort].val = var_n_kwabort; /* _n_kwabort on */ +if (var_n_kwabort == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2704); +fatal_exit(1); } else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwabort,self) on */ +if (unlikely(var_n_kwabort == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwabort->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} } RET_LABEL:; } -/* method parser_prod#AForExpr#replace_child for (self: AForExpr, ANode, nullable ANode) */ -void nit__parser_prod___AForExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AAbortExpr#replace_child for (self: AAbortExpr, ANode, nullable ANode) */ +void nit__parser_prod___AAbortExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwfor */; +val* var /* : TKwabort */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -8185,56 +8029,19 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : ANodes[TId] */; -val* var9 /* : ANodes[TId] */; -short int var10 /* : Bool */; -val* var11 /* : AExpr */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var16 /* : Bool */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; -const char* var_class_name20; -val* var21 /* : TKwdo */; -short int var22 /* : Bool */; -short int var24 /* : Bool */; -short int var26 /* : Bool */; -short int var27 /* : Bool */; -int cltype28; -int idtype29; -const char* var_class_name30; -val* var31 /* : nullable AExpr */; -short int var32 /* : Bool */; -short int var33 /* : Bool */; -short int var35 /* : Bool */; -short int var37 /* : Bool */; -short int var38 /* : Bool */; -int cltype39; -int idtype40; -const char* var_class_name41; -val* var42 /* : nullable ALabel */; -short int var43 /* : Bool */; -short int var44 /* : Bool */; -short int var46 /* : Bool */; -short int var48 /* : Bool */; -short int var49 /* : Bool */; -int cltype50; -int idtype51; -const char* var_class_name52; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwfor].val; /* _n_kwfor on */ +var = self->attrs[COLOR_nit__parser_nodes__AAbortExpr___n_kwabort].val; /* _n_kwabort on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwfor"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2781); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwabort"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2709); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -8247,9 +8054,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwfor */ -cltype = type_nit__TKwfor.color; -idtype = type_nit__TKwfor.id; +/* isa TKwabort */ +cltype = type_nit__TKwabort.color; +idtype = type_nit__TKwabort.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -8261,533 +8068,442 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwfor", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2782); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwabort", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2710); +fatal_exit(1); } { -nit__parser_prod___AForExpr___n_kwfor_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_kwfor= on */ +nit__parser_prod___AAbortExpr___n_kwabort_61d(self, var_new_child); /* Direct call parser_prod#AAbortExpr#n_kwabort= on */ } goto RET_LABEL; } else { } -{ -{ /* Inline parser_nodes#AForExpr#n_ids (self) on */ -var9 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_ids].val; /* _n_ids on */ -if (unlikely(var9 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ids"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1735); -show_backtrace(1); -} -var7 = var9; -RET_LABEL8:(void)0; -} +RET_LABEL:; } +/* method parser_prod#AAbortExpr#n_kwabort= for (self: AAbortExpr, TKwabort) */ +void nit__parser_prod___AAbortExpr___n_kwabort_61d(val* self, val* p0) { +val* var_node /* var node: TKwabort */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AAbortExpr___n_kwabort].val = var_node; /* _n_kwabort on */ { -var10 = nit___nit__ANodes___replace_child(var7, var_old_child, var_new_child); +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -if (var10){ -goto RET_LABEL; -} else { } -var11 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var11 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2786); -show_backtrace(1); +RET_LABEL:; +} +/* method parser_prod#AAbortExpr#visit_all for (self: AAbortExpr, Visitor) */ +void nit__parser_prod___AAbortExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TKwabort */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__AAbortExpr___n_kwabort].val; /* _n_kwabort on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwabort"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2724); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var11,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var11,var_other) on */ -var16 = var11 == var_other; -var14 = var16; -goto RET_LABEL15; -RET_LABEL15:(void)0; +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } +RET_LABEL:; } -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; +/* method parser_prod#AContinueExpr#init_acontinueexpr for (self: AContinueExpr, nullable TKwcontinue, nullable ALabel) */ +void nit__parser_prod___AContinueExpr___init_acontinueexpr(val* self, val* p0, val* p1) { +val* var_n_kwcontinue /* var n_kwcontinue: nullable TKwcontinue */; +val* var_n_label /* var n_label: nullable ALabel */; +short int var /* : Bool */; +short int var2 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var4 /* : Bool */; +short int var5 /* : Bool */; +short int var7 /* : Bool */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var11 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } } -if (var12){ -/* isa AExpr */ -cltype18 = type_nit__AExpr.color; -idtype19 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var17 = 0; -} else { -if(cltype18 >= var_new_child->type->table_size) { -var17 = 0; +var_n_kwcontinue = p0; +var_n_label = p1; +self->attrs[COLOR_nit__parser_nodes__AContinueExpr___n_kwcontinue].val = var_n_kwcontinue; /* _n_kwcontinue on */ +if (var_n_kwcontinue == NULL) { +var = 0; /* is null */ } else { -var17 = var_new_child->type->type_table[cltype18] == idtype19; -} -} -if (unlikely(!var17)) { -var_class_name20 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name20); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2787); -show_backtrace(1); +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_n_kwcontinue,((val*)NULL)) on */ +var_other = ((val*)NULL); { -nit__parser_prod___AForExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_expr= on */ +var4 = ((short int(*)(val* self, val* p0))(var_n_kwcontinue->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwcontinue, var_other); /* == on */ } -goto RET_LABEL; -} else { +var5 = !var4; +var2 = var5; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -var21 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwdo].val; /* _n_kwdo on */ -if (unlikely(var21 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2790); -show_backtrace(1); +var = var2; } +if (var){ { -{ /* Inline kernel#Object#== (var21,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var21,var_other) on */ -var26 = var21 == var_other; -var24 = var26; -goto RET_LABEL25; -RET_LABEL25:(void)0; -} -} -var22 = var24; -goto RET_LABEL23; -RET_LABEL23:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_kwcontinue,self) on */ +var_n_kwcontinue->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL6:(void)0; } } -if (var22){ -/* isa TKwdo */ -cltype28 = type_nit__TKwdo.color; -idtype29 = type_nit__TKwdo.id; -if(var_new_child == NULL) { -var27 = 0; -} else { -if(cltype28 >= var_new_child->type->table_size) { -var27 = 0; } else { -var27 = var_new_child->type->type_table[cltype28] == idtype29; -} -} -if (unlikely(!var27)) { -var_class_name30 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwdo", var_class_name30); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2791); -show_backtrace(1); -} -{ -nit__parser_prod___AForExpr___n_kwdo_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_kwdo= on */ } -goto RET_LABEL; +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ +if (var_n_label == NULL) { +var7 = 0; /* is null */ } else { +var7 = 1; /* arg is null and recv is not */ } -var31 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val; /* _n_block on */ -if (var31 == NULL) { -var32 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var31,var_old_child) on */ -var_other = var_old_child; +if (0) { +{ /* Inline kernel#Object#!= (var_n_label,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var31,var_other) on */ -var37 = var31 == var_other; -var35 = var37; -goto RET_LABEL36; -RET_LABEL36:(void)0; -} -} -var33 = var35; -goto RET_LABEL34; -RET_LABEL34:(void)0; -} -var32 = var33; -} -if (var32){ -/* isa nullable AExpr */ -cltype39 = type_nullable__nit__AExpr.color; -idtype40 = type_nullable__nit__AExpr.id; -if(var_new_child == NULL) { -var38 = 1; -} else { -if(cltype39 >= var_new_child->type->table_size) { -var38 = 0; -} else { -var38 = var_new_child->type->type_table[cltype39] == idtype40; +var10 = ((short int(*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other); /* == on */ } +var11 = !var10; +var8 = var11; +goto RET_LABEL9; +RET_LABEL9:(void)0; } -if (unlikely(!var38)) { -var_class_name41 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name41); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2795); -show_backtrace(1); +var7 = var8; } +if (var7){ { -nit__parser_prod___AForExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_block= on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ +var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL12:(void)0; +} } -goto RET_LABEL; } else { } -var42 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ -if (var42 == NULL) { -var43 = 0; /* cannot be null */ +RET_LABEL:; +} +/* method parser_prod#AContinueExpr#replace_child for (self: AContinueExpr, ANode, nullable ANode) */ +void nit__parser_prod___AContinueExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +val* var_old_child /* var old_child: ANode */; +val* var_new_child /* var new_child: nullable ANode */; +val* var /* : nullable TKwcontinue */; +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 ALabel */; +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_nit__parser_nodes__AContinueExpr___n_kwcontinue].val; /* _n_kwcontinue on */ +if (var == NULL) { +var1 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var42,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var42,var_other) on */ -var48 = var42 == var_other; -var46 = var48; -goto RET_LABEL47; -RET_LABEL47:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var6 = var == var_other; +var4 = var6; +goto RET_LABEL5; +RET_LABEL5:(void)0; } } -var44 = var46; -goto RET_LABEL45; -RET_LABEL45:(void)0; +var2 = var4; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -var43 = var44; +var1 = var2; } -if (var43){ -/* isa nullable ALabel */ -cltype50 = type_nullable__nit__ALabel.color; -idtype51 = type_nullable__nit__ALabel.id; +if (var1){ +/* isa nullable TKwcontinue */ +cltype = type_nullable__nit__TKwcontinue.color; +idtype = type_nullable__nit__TKwcontinue.id; if(var_new_child == NULL) { -var49 = 1; +var7 = 1; } else { -if(cltype50 >= var_new_child->type->table_size) { -var49 = 0; +if(cltype >= var_new_child->type->table_size) { +var7 = 0; } else { -var49 = var_new_child->type->type_table[cltype50] == idtype51; +var7 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var49)) { -var_class_name52 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name52); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2799); -show_backtrace(1); +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 TKwcontinue", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2742); +fatal_exit(1); } { -nit__parser_prod___AForExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_label= on */ +nit__parser_prod___AContinueExpr___n_kwcontinue_61d(self, var_new_child); /* Direct call parser_prod#AContinueExpr#n_kwcontinue= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AForExpr#n_kwfor= for (self: AForExpr, TKwfor) */ -void nit__parser_prod___AForExpr___n_kwfor_61d(val* self, val* p0) { -val* var_node /* var node: TKwfor */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwfor].val = var_node; /* _n_kwfor on */ +var8 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +var14 = var8 == var_other; +var12 = var14; +goto RET_LABEL13; +RET_LABEL13:(void)0; } -RET_LABEL:; } -/* method parser_prod#AForExpr#n_expr= for (self: AForExpr, AExpr) */ -void nit__parser_prod___AForExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var10 = var12; +goto RET_LABEL11; +RET_LABEL11:(void)0; } +var9 = var10; } -RET_LABEL:; +if (var9){ +/* isa nullable ALabel */ +cltype16 = type_nullable__nit__ALabel.color; +idtype17 = type_nullable__nit__ALabel.id; +if(var_new_child == NULL) { +var15 = 1; +} 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`", "nullable ALabel", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2746); +fatal_exit(1); } -/* method parser_prod#AForExpr#n_kwdo= for (self: AForExpr, TKwdo) */ -void nit__parser_prod___AForExpr___n_kwdo_61d(val* self, val* p0) { -val* var_node /* var node: TKwdo */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwdo].val = var_node; /* _n_kwdo on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +nit__parser_prod___AContinueExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#AContinueExpr#n_label= on */ } +goto RET_LABEL; +} else { } RET_LABEL:; } -/* method parser_prod#AForExpr#n_block= for (self: AForExpr, nullable AExpr) */ -void nit__parser_prod___AForExpr___n_block_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; +/* method parser_prod#AContinueExpr#n_kwcontinue= for (self: AContinueExpr, nullable TKwcontinue) */ +void nit__parser_prod___AContinueExpr___n_kwcontinue_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwcontinue */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val = var_node; /* _n_block on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__AContinueExpr___n_kwcontinue].val = var_node; /* _n_kwcontinue on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AForExpr#n_label= for (self: AForExpr, nullable ALabel) */ -void nit__parser_prod___AForExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { +/* method parser_prod#AContinueExpr#n_label= for (self: AContinueExpr, nullable ALabel) */ +void nit__parser_prod___AContinueExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { val* var_node /* var node: nullable ALabel */; -val* var /* : null */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AForExpr#visit_all for (self: AForExpr, Visitor) */ -void nit__parser_prod___AForExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AContinueExpr#visit_all for (self: AContinueExpr, Visitor) */ +void nit__parser_prod___AContinueExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TKwfor */; -val* var1 /* : ANodes[TId] */; -val* var3 /* : ANodes[TId] */; -val* var4 /* : AExpr */; -val* var5 /* : TKwdo */; -val* var6 /* : nullable AExpr */; -val* var7 /* : nullable ALabel */; +val* var /* : nullable TKwcontinue */; +val* var1 /* : nullable ALabel */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwfor].val; /* _n_kwfor on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwfor"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2833); -show_backtrace(1); -} +var = self->attrs[COLOR_nit__parser_nodes__AContinueExpr___n_kwcontinue].val; /* _n_kwcontinue on */ { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var1 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ { -{ /* Inline parser_nodes#AForExpr#n_ids (self) on */ -var3 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_ids].val; /* _n_ids on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ids"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1735); -show_backtrace(1); -} -var1 = var3; -RET_LABEL2:(void)0; -} -} -{ -nit___nit__ANodes___visit_all(var1, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ -} -var4 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var4 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2835); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var5 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwdo].val; /* _n_kwdo on */ -if (unlikely(var5 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2836); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var6 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val; /* _n_block on */ -{ -nit___nit__Visitor___enter_visit(var_v, var6); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var7 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ -{ -nit___nit__Visitor___enter_visit(var_v, var7); /* Direct call parser_nodes#Visitor#enter_visit on */ +nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AAssertExpr#init_aassertexpr for (self: AAssertExpr, nullable TKwassert, nullable TId, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AAssertExpr___init_aassertexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -val* var_n_kwassert /* var n_kwassert: nullable TKwassert */; -val* var_n_id /* var n_id: nullable TId */; -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_else /* var n_else: nullable AExpr */; -val* var /* : null */; -short int var2 /* : Bool */; +/* method parser_prod#ADoExpr#init_adoexpr for (self: ADoExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */ +void nit__parser_prod___ADoExpr___init_adoexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_kwdo /* var n_kwdo: nullable TKwdo */; +val* var_n_block /* var n_block: nullable AExpr */; +val* var_n_label /* var n_label: nullable ALabel */; +short int var /* : Bool */; short int var3 /* : Bool */; val* var_other /* var other: nullable Object */; short int var5 /* : Bool */; short int var6 /* : Bool */; -val* var9 /* : null */; -short int var10 /* : Bool */; +short int var8 /* : Bool */; +short int var9 /* : Bool */; short int var11 /* : Bool */; -short int var13 /* : Bool */; -short int var14 /* : Bool */; -var_n_kwassert = p0; -var_n_id = p1; -var_n_expr = p2; -var_n_else = p3; -if (unlikely(var_n_kwassert == NULL)) { +short int var12 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwdo = p0; +var_n_block = p1; +var_n_label = p2; +if (unlikely(var_n_kwdo == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2849); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2776); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwassert].val = var_n_kwassert; /* _n_kwassert on */ -if (var_n_kwassert == NULL) { +self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_kwdo].val = var_n_kwdo; /* _n_kwdo on */ +if (var_n_kwdo == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2850); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2777); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwassert,self) on */ -if (unlikely(var_n_kwassert == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on */ +if (unlikely(var_n_kwdo == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_kwassert->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_kwdo->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } } -self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_id].val = var_n_id; /* _n_id on */ -var = NULL; -if (var_n_id == NULL) { -var2 = 0; /* is null */ +self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_block].val = var_n_block; /* _n_block on */ +if (var_n_block == NULL) { +var = 0; /* is null */ } else { -var2 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_id,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_n_block,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var5 = ((short int (*)(val* self, val* p0))(var_n_id->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_id, var_other) /* == on */; +var5 = ((short int(*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other); /* == on */ } var6 = !var5; var3 = var6; goto RET_LABEL4; RET_LABEL4:(void)0; } -var2 = var3; +var = var3; } -if (var2){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ +var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL7:(void)0; } } } else { } -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2853); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2854); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL8:(void)0; -} -} -self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val = var_n_else; /* _n_else on */ -var9 = NULL; -if (var_n_else == NULL) { -var10 = 0; /* is null */ +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ +if (var_n_label == NULL) { +var8 = 0; /* is null */ } else { -var10 = 1; /* arg is null and recv is not */ +var8 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_else,var9) on */ -var_other = var9; +{ /* Inline kernel#Object#!= (var_n_label,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var13 = ((short int (*)(val* self, val* p0))(var_n_else->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_else, var_other) /* == on */; +var11 = ((short int(*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other); /* == on */ } -var14 = !var13; -var11 = var14; -goto RET_LABEL12; -RET_LABEL12:(void)0; +var12 = !var11; +var9 = var12; +goto RET_LABEL10; +RET_LABEL10:(void)0; } -var10 = var11; +var8 = var9; } -if (var10){ +if (var8){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_else,self) on */ -var_n_else->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL15:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ +var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL13:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AAssertExpr#replace_child for (self: AAssertExpr, ANode, nullable ANode) */ -void nit__parser_prod___AAssertExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ADoExpr#replace_child for (self: ADoExpr, ANode, nullable ANode) */ +void nit__parser_prod___ADoExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwassert */; +val* var /* : TKwdo */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -8796,7 +8512,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : nullable TId */; +val* var7 /* : nullable AExpr */; short int var8 /* : Bool */; short int var9 /* : Bool */; short int var11 /* : Bool */; @@ -8805,36 +8521,28 @@ short int var14 /* : Bool */; int cltype15; int idtype16; const char* var_class_name17; -val* var18 /* : AExpr */; +val* var18 /* : nullable ALabel */; short int var19 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; short int var24 /* : Bool */; -int cltype25; -int idtype26; -const char* var_class_name27; -val* var28 /* : nullable AExpr */; -short int var29 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var34 /* : Bool */; -short int var35 /* : Bool */; -int cltype36; -int idtype37; -const char* var_class_name38; +short int var25 /* : Bool */; +int cltype26; +int idtype27; +const char* var_class_name28; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwassert].val; /* _n_kwassert on */ +var = self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_kwdo].val; /* _n_kwdo on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwassert"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2861); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2786); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -8847,9 +8555,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwassert */ -cltype = type_nit__TKwassert.color; -idtype = type_nit__TKwassert.id; +/* isa TKwdo */ +cltype = type_nit__TKwdo.color; +idtype = type_nit__TKwdo.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -8861,354 +8569,411 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwassert", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2862); -show_backtrace(1); -} -{ -nit__parser_prod___AAssertExpr___n_kwassert_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_kwassert= on */ -} -goto RET_LABEL; -} else { -} -var7 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_id].val; /* _n_id on */ -if (var7 == NULL) { -var8 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var13 = var7 == var_other; -var11 = var13; -goto RET_LABEL12; -RET_LABEL12:(void)0; -} -} -var9 = var11; -goto RET_LABEL10; -RET_LABEL10:(void)0; -} -var8 = var9; -} -if (var8){ -/* isa nullable TId */ -cltype15 = type_nullable__nit__TId.color; -idtype16 = type_nullable__nit__TId.id; -if(var_new_child == NULL) { -var14 = 1; -} else { -if(cltype15 >= var_new_child->type->table_size) { -var14 = 0; -} else { -var14 = var_new_child->type->type_table[cltype15] == idtype16; -} -} -if (unlikely(!var14)) { -var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TId", var_class_name17); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2866); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwdo", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2787); +fatal_exit(1); } { -nit__parser_prod___AAssertExpr___n_id_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_id= on */ +nit__parser_prod___ADoExpr___n_kwdo_61d(self, var_new_child); /* Direct call parser_prod#ADoExpr#n_kwdo= on */ } goto RET_LABEL; -} else { -} -var18 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var18 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2869); -show_backtrace(1); +} else { } -{ -{ /* Inline kernel#Object#== (var18,var_old_child) on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_block].val; /* _n_block on */ +if (var7 == NULL) { +var8 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ -var23 = var18 == var_other; -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var13 = var7 == var_other; +var11 = var13; +goto RET_LABEL12; +RET_LABEL12:(void)0; } } -var19 = var21; -goto RET_LABEL20; -RET_LABEL20:(void)0; +var9 = var11; +goto RET_LABEL10; +RET_LABEL10:(void)0; } +var8 = var9; } -if (var19){ -/* isa AExpr */ -cltype25 = type_nit__AExpr.color; -idtype26 = type_nit__AExpr.id; +if (var8){ +/* isa nullable AExpr */ +cltype15 = type_nullable__nit__AExpr.color; +idtype16 = type_nullable__nit__AExpr.id; if(var_new_child == NULL) { -var24 = 0; +var14 = 1; } else { -if(cltype25 >= var_new_child->type->table_size) { -var24 = 0; +if(cltype15 >= var_new_child->type->table_size) { +var14 = 0; } else { -var24 = var_new_child->type->type_table[cltype25] == idtype26; +var14 = var_new_child->type->type_table[cltype15] == idtype16; } } -if (unlikely(!var24)) { -var_class_name27 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name27); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2870); -show_backtrace(1); +if (unlikely(!var14)) { +var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name17); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2791); +fatal_exit(1); } { -nit__parser_prod___AAssertExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_expr= on */ +nit__parser_prod___ADoExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#ADoExpr#n_block= on */ } goto RET_LABEL; } else { } -var28 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val; /* _n_else on */ -if (var28 == NULL) { -var29 = 0; /* cannot be null */ +var18 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +if (var18 == NULL) { +var19 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var28,var_old_child) on */ +{ /* Inline kernel#Object#== (var18,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var28,var_other) on */ -var34 = var28 == var_other; -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; +{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ +var24 = var18 == var_other; +var22 = var24; +goto RET_LABEL23; +RET_LABEL23:(void)0; } } -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } -var29 = var30; +var19 = var20; } -if (var29){ -/* isa nullable AExpr */ -cltype36 = type_nullable__nit__AExpr.color; -idtype37 = type_nullable__nit__AExpr.id; +if (var19){ +/* isa nullable ALabel */ +cltype26 = type_nullable__nit__ALabel.color; +idtype27 = type_nullable__nit__ALabel.id; if(var_new_child == NULL) { -var35 = 1; +var25 = 1; } else { -if(cltype36 >= var_new_child->type->table_size) { -var35 = 0; +if(cltype26 >= var_new_child->type->table_size) { +var25 = 0; } else { -var35 = var_new_child->type->type_table[cltype36] == idtype37; +var25 = var_new_child->type->type_table[cltype26] == idtype27; } } -if (unlikely(!var35)) { -var_class_name38 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name38); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2874); -show_backtrace(1); +if (unlikely(!var25)) { +var_class_name28 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name28); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2795); +fatal_exit(1); } { -nit__parser_prod___AAssertExpr___n_else_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_else= on */ +nit__parser_prod___ADoExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#ADoExpr#n_label= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AAssertExpr#n_kwassert= for (self: AAssertExpr, TKwassert) */ -void nit__parser_prod___AAssertExpr___n_kwassert_61d(val* self, val* p0) { -val* var_node /* var node: TKwassert */; +/* method parser_prod#ADoExpr#n_kwdo= for (self: ADoExpr, TKwdo) */ +void nit__parser_prod___ADoExpr___n_kwdo_61d(val* self, val* p0) { +val* var_node /* var node: TKwdo */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwassert].val = var_node; /* _n_kwassert on */ +self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_kwdo].val = var_node; /* _n_kwdo on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAssertExpr#n_id= for (self: AAssertExpr, nullable TId) */ -void nit__parser_prod___AAssertExpr___n_id_61d(val* self, val* p0) { -val* var_node /* var node: nullable TId */; -val* var /* : null */; +/* method parser_prod#ADoExpr#n_block= for (self: ADoExpr, nullable AExpr) */ +void nit__parser_prod___ADoExpr___n_block_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_id].val = var_node; /* _n_id on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_block].val = var_node; /* _n_block on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AAssertExpr#n_expr= for (self: AAssertExpr, AExpr) */ -void nit__parser_prod___AAssertExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAssertExpr#n_else= for (self: AAssertExpr, nullable AExpr) */ -void nit__parser_prod___AAssertExpr___n_else_61d(val* self, val* p0) { -val* var_node /* var node: nullable AExpr */; -val* var /* : null */; +/* method parser_prod#ADoExpr#n_label= for (self: ADoExpr, nullable ALabel) */ +void nit__parser_prod___ADoExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { +val* var_node /* var node: nullable ALabel */; +short int var /* : Bool */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; short int var4 /* : Bool */; -short int var5 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val = var_node; /* _n_else on */ -var = NULL; +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ if (var_node == NULL) { -var1 = 0; /* is null */ +var = 0; /* is null */ } else { -var1 = 1; /* arg is null and recv is not */ +var = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; +var = var1; } -if (var1){ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#AAssertExpr#visit_all for (self: AAssertExpr, Visitor) */ -void nit__parser_prod___AAssertExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ADoExpr#visit_all for (self: ADoExpr, Visitor) */ +void nit__parser_prod___ADoExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TKwassert */; -val* var1 /* : nullable TId */; -val* var2 /* : AExpr */; -val* var3 /* : nullable AExpr */; +val* var /* : TKwdo */; +val* var1 /* : nullable AExpr */; +val* var2 /* : nullable ALabel */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwassert].val; /* _n_kwassert on */ +var = self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_kwdo].val; /* _n_kwdo on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwassert"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2903); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2819); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_id].val; /* _n_id on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ADoExpr___n_block].val; /* _n_block on */ { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2905); -show_backtrace(1); -} +var2 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val; /* _n_else on */ -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#AOnceExpr#init_aonceexpr for (self: AOnceExpr, nullable TKwonce, nullable AExpr) */ -void nit__parser_prod___AOnceExpr___init_aonceexpr(val* self, val* p0, val* p1) { -val* var_n_kwonce /* var n_kwonce: nullable TKwonce */; +/* method parser_prod#AIfExpr#init_aifexpr for (self: AIfExpr, nullable TKwif, nullable AExpr, nullable TKwthen, nullable AExpr, nullable TKwelse, nullable AExpr) */ +void nit__parser_prod___AIfExpr___init_aifexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { +val* var_n_kwif /* var n_kwif: nullable TKwif */; val* var_n_expr /* var n_expr: nullable AExpr */; -var_n_kwonce = p0; +val* var_n_kwthen /* var n_kwthen: nullable TKwthen */; +val* var_n_then /* var n_then: nullable AExpr */; +val* var_n_kwelse /* var n_kwelse: nullable TKwelse */; +val* var_n_else /* var n_else: nullable AExpr */; +short int var /* : Bool */; +short int var5 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var7 /* : Bool */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var11 /* : Bool */; +short int var13 /* : Bool */; +short int var14 /* : Bool */; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +short int var19 /* : Bool */; +short int var20 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwif = p0; var_n_expr = p1; -if (unlikely(var_n_kwonce == NULL)) { +var_n_kwthen = p2; +var_n_then = p3; +var_n_kwelse = p4; +var_n_else = p5; +if (unlikely(var_n_kwif == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2834); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwif].val = var_n_kwif; /* _n_kwif on */ +if (var_n_kwif == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2835); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwif,self) on */ +if (unlikely(var_n_kwif == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwif->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} +} +if (unlikely(var_n_expr == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2836); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2837); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +if (unlikely(var_n_expr == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_kwthen == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2915); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2838); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_kwonce].val = var_n_kwonce; /* _n_kwonce on */ -if (var_n_kwonce == NULL) { +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwthen].val = var_n_kwthen; /* _n_kwthen on */ +if (var_n_kwthen == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2839); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwthen,self) on */ +if (unlikely(var_n_kwthen == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2916); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwthen->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val = var_n_then; /* _n_then on */ +if (var_n_then == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_then,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var7 = ((short int(*)(val* self, val* p0))(var_n_then->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_then, var_other); /* == on */ +} +var8 = !var7; +var5 = var8; +goto RET_LABEL6; +RET_LABEL6:(void)0; +} +var = var5; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_then,self) on */ +var_n_then->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL9:(void)0; +} +} +} else { +} +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwelse].val = var_n_kwelse; /* _n_kwelse on */ +if (var_n_kwelse == NULL) { +var10 = 0; /* is null */ +} else { +var10 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_kwelse,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var13 = ((short int(*)(val* self, val* p0))(var_n_kwelse->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwelse, var_other); /* == on */ +} +var14 = !var13; +var11 = var14; +goto RET_LABEL12; +RET_LABEL12:(void)0; +} +var10 = var11; +} +if (var10){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_kwelse,self) on */ +var_n_kwelse->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL15:(void)0; +} +} +} else { +} +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val = var_n_else; /* _n_else on */ +if (var_n_else == NULL) { +var16 = 0; /* is null */ } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwonce,self) on */ -if (unlikely(var_n_kwonce == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +var16 = 1; /* arg is null and recv is not */ } -var_n_kwonce->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +if (0) { +{ /* Inline kernel#Object#!= (var_n_else,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var19 = ((short int(*)(val* self, val* p0))(var_n_else->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_else, var_other); /* == on */ } +var20 = !var19; +var17 = var20; +goto RET_LABEL18; +RET_LABEL18:(void)0; } -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2917); -show_backtrace(1); +var16 = var17; } -self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2918); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if (var16){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_else,self) on */ +var_n_else->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL21:(void)0; } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; } +} else { } RET_LABEL:; } -/* method parser_prod#AOnceExpr#replace_child for (self: AOnceExpr, ANode, nullable ANode) */ -void nit__parser_prod___AOnceExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AIfExpr#replace_child for (self: AIfExpr, ANode, nullable ANode) */ +void nit__parser_prod___AIfExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwonce */; +val* var /* : TKwif */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -9225,19 +8990,54 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : TKwthen */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; +val* var27 /* : nullable AExpr */; +short int var28 /* : Bool */; +short int var29 /* : Bool */; +short int var31 /* : Bool */; +short int var33 /* : Bool */; +short int var34 /* : Bool */; +int cltype35; +int idtype36; +const char* var_class_name37; +val* var38 /* : nullable TKwelse */; +short int var39 /* : Bool */; +short int var40 /* : Bool */; +short int var42 /* : Bool */; +short int var44 /* : Bool */; +short int var45 /* : Bool */; +int cltype46; +int idtype47; +const char* var_class_name48; +val* var49 /* : nullable AExpr */; +short int var50 /* : Bool */; +short int var51 /* : Bool */; +short int var53 /* : Bool */; +short int var55 /* : Bool */; +short int var56 /* : Bool */; +int cltype57; +int idtype58; +const char* var_class_name59; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_kwonce].val; /* _n_kwonce on */ +var = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwif].val; /* _n_kwif on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwonce"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2923); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2850); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -9250,9 +9050,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwonce */ -cltype = type_nit__TKwonce.color; -idtype = type_nit__TKwonce.id; +/* isa TKwif */ +cltype = type_nit__TKwif.color; +idtype = type_nit__TKwif.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -9264,21 +9064,21 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwonce", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2924); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwif", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2851); +fatal_exit(1); } { -nit__parser_prod___AOnceExpr___n_kwonce_61d(self, var_new_child); /* Direct call parser_prod#AOnceExpr#n_kwonce= on */ +nit__parser_prod___AIfExpr___n_kwif_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_kwif= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val; /* _n_expr on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val; /* _n_expr on */ if (unlikely(var7 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2927); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2854); +fatal_exit(1); } { { /* Inline kernel#Object#== (var7,var_old_child) on */ @@ -9312,345 +9112,558 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2928); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2855); +fatal_exit(1); } { -nit__parser_prod___AOnceExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AOnceExpr#n_expr= on */ +nit__parser_prod___AIfExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_expr= on */ } goto RET_LABEL; } else { } -RET_LABEL:; +var17 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwthen].val; /* _n_kwthen on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwthen"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2858); +fatal_exit(1); } -/* method parser_prod#AOnceExpr#n_kwonce= for (self: AOnceExpr, TKwonce) */ -void nit__parser_prod___AOnceExpr___n_kwonce_61d(val* self, val* p0) { -val* var_node /* var node: TKwonce */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_kwonce].val = var_node; /* _n_kwonce on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } } -RET_LABEL:; +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa TKwthen */ +cltype24 = type_nit__TKwthen.color; +idtype25 = type_nit__TKwthen.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; +} +} +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwthen", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2859); +fatal_exit(1); } -/* method parser_prod#AOnceExpr#n_expr= for (self: AOnceExpr, AExpr) */ -void nit__parser_prod___AOnceExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +nit__parser_prod___AIfExpr___n_kwthen_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_kwthen= on */ } +goto RET_LABEL; +} else { } -RET_LABEL:; +var27 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val; /* _n_then on */ +if (var27 == NULL) { +var28 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var27,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ +var33 = var27 == var_other; +var31 = var33; +goto RET_LABEL32; +RET_LABEL32:(void)0; } -/* method parser_prod#AOnceExpr#visit_all for (self: AOnceExpr, Visitor) */ -void nit__parser_prod___AOnceExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TKwonce */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_kwonce].val; /* _n_kwonce on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwonce"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2947); -show_backtrace(1); +} +var29 = var31; +goto RET_LABEL30; +RET_LABEL30:(void)0; +} +var28 = var29; +} +if (var28){ +/* isa nullable AExpr */ +cltype35 = type_nullable__nit__AExpr.color; +idtype36 = type_nullable__nit__AExpr.id; +if(var_new_child == NULL) { +var34 = 1; +} else { +if(cltype35 >= var_new_child->type->table_size) { +var34 = 0; +} else { +var34 = var_new_child->type->type_table[cltype35] == idtype36; +} +} +if (unlikely(!var34)) { +var_class_name37 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name37); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2863); +fatal_exit(1); } { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +nit__parser_prod___AIfExpr___n_then_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_then= on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2948); -show_backtrace(1); +goto RET_LABEL; +} else { } +var38 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwelse].val; /* _n_kwelse on */ +if (var38 == NULL) { +var39 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var38,var_old_child) on */ +var_other = var_old_child; { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#is_same_instance (var38,var_other) on */ +var44 = var38 == var_other; +var42 = var44; +goto RET_LABEL43; +RET_LABEL43:(void)0; } -RET_LABEL:; } -/* method parser_prod#AOrExpr#init_aorexpr for (self: AOrExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AOrExpr___init_aorexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3028); -show_backtrace(1); +var40 = var42; +goto RET_LABEL41; +RET_LABEL41:(void)0; } -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3029); -show_backtrace(1); +var39 = var40; +} +if (var39){ +/* isa nullable TKwelse */ +cltype46 = type_nullable__nit__TKwelse.color; +idtype47 = type_nullable__nit__TKwelse.id; +if(var_new_child == NULL) { +var45 = 1; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if(cltype46 >= var_new_child->type->table_size) { +var45 = 0; +} else { +var45 = var_new_child->type->type_table[cltype46] == idtype47; } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +if (unlikely(!var45)) { +var_class_name48 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwelse", var_class_name48); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2867); +fatal_exit(1); } -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3030); -show_backtrace(1); +{ +nit__parser_prod___AIfExpr___n_kwelse_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_kwelse= on */ } -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3031); -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", FILE_nit__parser_nodes, 36); -show_backtrace(1); } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var49 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val; /* _n_else on */ +if (var49 == NULL) { +var50 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var49,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var49,var_other) on */ +var55 = var49 == var_other; +var53 = var55; +goto RET_LABEL54; +RET_LABEL54:(void)0; +} +} +var51 = var53; +goto RET_LABEL52; +RET_LABEL52:(void)0; +} +var50 = var51; +} +if (var50){ +/* isa nullable AExpr */ +cltype57 = type_nullable__nit__AExpr.color; +idtype58 = type_nullable__nit__AExpr.id; +if(var_new_child == NULL) { +var56 = 1; +} else { +if(cltype57 >= var_new_child->type->table_size) { +var56 = 0; +} else { +var56 = var_new_child->type->type_table[cltype57] == idtype58; +} +} +if (unlikely(!var56)) { +var_class_name59 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name59); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2871); +fatal_exit(1); +} +{ +nit__parser_prod___AIfExpr___n_else_61d(self, var_new_child); /* Direct call parser_prod#AIfExpr#n_else= on */ +} +goto RET_LABEL; +} else { +} +RET_LABEL:; +} +/* method parser_prod#AIfExpr#n_kwif= for (self: AIfExpr, TKwif) */ +void nit__parser_prod___AIfExpr___n_kwif_61d(val* self, val* p0) { +val* var_node /* var node: TKwif */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwif].val = var_node; /* _n_kwif on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AIfExpr#n_expr= for (self: AIfExpr, AExpr) */ +void nit__parser_prod___AIfExpr___n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val = var_node; /* _n_expr on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AIfExpr#n_kwthen= for (self: AIfExpr, TKwthen) */ +void nit__parser_prod___AIfExpr___n_kwthen_61d(val* self, val* p0) { +val* var_node /* var node: TKwthen */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwthen].val = var_node; /* _n_kwthen on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AOrExpr#replace_child for (self: AOrExpr, ANode, nullable ANode) */ -void nit__parser_prod___AOrExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +/* method parser_prod#AIfExpr#n_then= for (self: AIfExpr, nullable AExpr) */ +void nit__parser_prod___AIfExpr___n_then_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3036); -show_backtrace(1); +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val = var_node; /* _n_then on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -var1 = var3; +var4 = !var3; +var1 = var4; goto RET_LABEL2; RET_LABEL2:(void)0; } +var = var1; } -if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3037); -show_backtrace(1); +} else { } -{ -nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AOrExpr#n_expr= on */ +RET_LABEL:; } -goto RET_LABEL; +/* method parser_prod#AIfExpr#n_kwelse= for (self: AIfExpr, nullable TKwelse) */ +void nit__parser_prod___AIfExpr___n_kwelse_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwelse */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwelse].val = var_node; /* _n_kwelse on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { +var = 1; /* arg is null and recv is not */ } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3040); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -} -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; -} -} -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3041); -show_backtrace(1); +var = var1; } +if (var){ { -nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AOrExpr#n_expr2= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} } -goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AOrExpr#n_expr= for (self: AOrExpr, AExpr) */ -void nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AIfExpr#n_else= for (self: AIfExpr, nullable AExpr) */ +void nit__parser_prod___AIfExpr___n_else_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val = var_node; /* _n_else on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -RET_LABEL:; +var = var1; } -/* method parser_prod#AOrExpr#n_expr2= for (self: AOrExpr, AExpr) */ -void nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_node; /* _n_expr2 on */ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#AOrExpr#visit_all for (self: AOrExpr, Visitor) */ -void nit__parser_prod___AOrExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AIfExpr#visit_all for (self: AIfExpr, Visitor) */ +void nit__parser_prod___AIfExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; +val* var /* : TKwif */; val* var1 /* : AExpr */; +val* var2 /* : TKwthen */; +val* var3 /* : nullable AExpr */; +val* var4 /* : nullable TKwelse */; +val* var5 /* : nullable AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwif].val; /* _n_kwif on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3060); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2910); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val; /* _n_expr on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3061); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2911); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwthen].val; /* _n_kwthen on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwthen"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2912); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val; /* _n_then on */ +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_kwelse].val; /* _n_kwelse on */ +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var5 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val; /* _n_else on */ +{ +nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AAndExpr#init_aandexpr for (self: AAndExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AAndExpr___init_aandexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AIfexprExpr#init_aifexprexpr for (self: AIfexprExpr, nullable TKwif, nullable AExpr, nullable TKwthen, nullable AExpr, nullable TKwelse, nullable AExpr) */ +void nit__parser_prod___AIfexprExpr___init_aifexprexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { +val* var_n_kwif /* var n_kwif: nullable TKwif */; 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_kwthen /* var n_kwthen: nullable TKwthen */; +val* var_n_then /* var n_then: nullable AExpr */; +val* var_n_kwelse /* var n_kwelse: nullable TKwelse */; +val* var_n_else /* var n_else: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwif = p0; +var_n_expr = p1; +var_n_kwthen = p2; +var_n_then = p3; +var_n_kwelse = p4; +var_n_else = p5; +if (unlikely(var_n_kwif == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2928); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwif].val = var_n_kwif; /* _n_kwif on */ +if (var_n_kwif == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2929); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwif,self) on */ +if (unlikely(var_n_kwif == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwif->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} +} if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3070); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2930); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3071); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2931); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_kwthen == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2932); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwthen].val = var_n_kwthen; /* _n_kwthen on */ +if (var_n_kwthen == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2933); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwthen,self) on */ +if (unlikely(var_n_kwthen == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwthen->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_then == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3072); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2934); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val = var_n_then; /* _n_then on */ +if (var_n_then == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3073); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2935); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_then,self) on */ +if (unlikely(var_n_then == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_then->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +if (unlikely(var_n_kwelse == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2936); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwelse].val = var_n_kwelse; /* _n_kwelse on */ +if (var_n_kwelse == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2937); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwelse,self) on */ +if (unlikely(var_n_kwelse == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwelse->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL6:(void)0; +} +} +if (unlikely(var_n_else == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2938); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val = var_n_else; /* _n_else on */ +if (var_n_else == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2939); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_else,self) on */ +if (unlikely(var_n_else == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_else->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAndExpr#replace_child for (self: AAndExpr, ANode, nullable ANode) */ -void nit__parser_prod___AAndExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AIfexprExpr#replace_child for (self: AIfexprExpr, ANode, nullable ANode) */ +void nit__parser_prod___AIfexprExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +val* var /* : TKwif */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -9667,19 +9680,51 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : TKwthen */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; +val* var27 /* : AExpr */; +short int var28 /* : Bool */; +short int var30 /* : Bool */; +short int var32 /* : Bool */; +short int var33 /* : Bool */; +int cltype34; +int idtype35; +const char* var_class_name36; +val* var37 /* : TKwelse */; +short int var38 /* : Bool */; +short int var40 /* : Bool */; +short int var42 /* : Bool */; +short int var43 /* : Bool */; +int cltype44; +int idtype45; +const char* var_class_name46; +val* var47 /* : AExpr */; +short int var48 /* : Bool */; +short int var50 /* : Bool */; +short int var52 /* : Bool */; +short int var53 /* : Bool */; +int cltype54; +int idtype55; +const char* var_class_name56; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwif].val; /* _n_kwif on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3078); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2944); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -9692,9 +9737,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +/* isa TKwif */ +cltype = type_nit__TKwif.color; +idtype = type_nit__TKwif.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -9706,21 +9751,21 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3079); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwif", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2945); +fatal_exit(1); } { -nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAndExpr#n_expr= on */ +nit__parser_prod___AIfexprExpr___n_kwif_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_kwif= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val; /* _n_expr on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3082); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2948); +fatal_exit(1); } { { /* Inline kernel#Object#== (var7,var_old_child) on */ @@ -9754,248 +9799,202 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3083); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2949); +fatal_exit(1); } { -nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AAndExpr#n_expr2= on */ +nit__parser_prod___AIfexprExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_expr= on */ } goto RET_LABEL; } else { } -RET_LABEL:; +var17 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwthen].val; /* _n_kwthen on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwthen"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2952); +fatal_exit(1); } -/* method parser_prod#AAndExpr#n_expr= for (self: AAndExpr, AExpr) */ -void nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } } -RET_LABEL:; +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; } -/* method parser_prod#AAndExpr#n_expr2= for (self: AAndExpr, AExpr) */ -void nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_node; /* _n_expr2 on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +if (var18){ +/* isa TKwthen */ +cltype24 = type_nit__TKwthen.color; +idtype25 = type_nit__TKwthen.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; } -RET_LABEL:; } -/* method parser_prod#AAndExpr#visit_all for (self: AAndExpr, Visitor) */ -void nit__parser_prod___AAndExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3102); -show_backtrace(1); +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwthen", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2953); +fatal_exit(1); } { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +nit__parser_prod___AIfexprExpr___n_kwthen_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_kwthen= on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3103); -show_backtrace(1); +goto RET_LABEL; +} else { +} +var27 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val; /* _n_then on */ +if (unlikely(var27 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_then"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2956); +fatal_exit(1); } { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#== (var27,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ +var32 = var27 == var_other; +var30 = var32; +goto RET_LABEL31; +RET_LABEL31:(void)0; } -RET_LABEL:; } -/* method parser_prod#AOrElseExpr#init_aorelseexpr for (self: AOrElseExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AOrElseExpr___init_aorelseexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3112); -show_backtrace(1); +var28 = var30; +goto RET_LABEL29; +RET_LABEL29:(void)0; } -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3113); -show_backtrace(1); +} +if (var28){ +/* isa AExpr */ +cltype34 = type_nit__AExpr.color; +idtype35 = type_nit__AExpr.id; +if(var_new_child == NULL) { +var33 = 0; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if(cltype34 >= var_new_child->type->table_size) { +var33 = 0; +} else { +var33 = var_new_child->type->type_table[cltype34] == idtype35; } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +if (unlikely(!var33)) { +var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name36); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2957); +fatal_exit(1); } -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3114); -show_backtrace(1); +{ +nit__parser_prod___AIfexprExpr___n_then_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_then= on */ } -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3115); -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", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} } -RET_LABEL:; -} -/* method parser_prod#AOrElseExpr#replace_child for (self: AOrElseExpr, ANode, nullable ANode) */ -void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3120); -show_backtrace(1); +var37 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwelse].val; /* _n_kwelse on */ +if (unlikely(var37 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwelse"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2960); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var37,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +{ /* Inline kernel#Object#is_same_instance (var37,var_other) on */ +var42 = var37 == var_other; +var40 = var42; +goto RET_LABEL41; +RET_LABEL41:(void)0; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var38 = var40; +goto RET_LABEL39; +RET_LABEL39:(void)0; } } -if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +if (var38){ +/* isa TKwelse */ +cltype44 = type_nit__TKwelse.color; +idtype45 = type_nit__TKwelse.id; if(var_new_child == NULL) { -var6 = 0; +var43 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +if(cltype44 >= var_new_child->type->table_size) { +var43 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var43 = var_new_child->type->type_table[cltype44] == idtype45; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3121); -show_backtrace(1); +if (unlikely(!var43)) { +var_class_name46 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwelse", var_class_name46); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2961); +fatal_exit(1); } { -nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AOrElseExpr#n_expr= on */ +nit__parser_prod___AIfexprExpr___n_kwelse_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_kwelse= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3124); -show_backtrace(1); +var47 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val; /* _n_else on */ +if (unlikely(var47 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_else"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2964); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var47,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline kernel#Object#is_same_instance (var47,var_other) on */ +var52 = var47 == var_other; +var50 = var52; +goto RET_LABEL51; +RET_LABEL51:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var48 = var50; +goto RET_LABEL49; +RET_LABEL49:(void)0; } } -if (var8){ +if (var48){ /* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +cltype54 = type_nit__AExpr.color; +idtype55 = type_nit__AExpr.id; if(var_new_child == NULL) { -var13 = 0; +var53 = 0; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype54 >= var_new_child->type->table_size) { +var53 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var53 = var_new_child->type->type_table[cltype54] == idtype55; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3125); -show_backtrace(1); +if (unlikely(!var53)) { +var_class_name56 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name56); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 2965); +fatal_exit(1); } { -nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AOrElseExpr#n_expr2= on */ +nit__parser_prod___AIfexprExpr___n_else_61d(self, var_new_child); /* Direct call parser_prod#AIfexprExpr#n_else= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AOrElseExpr#n_expr= for (self: AOrElseExpr, AExpr) */ -void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -}