+{ /* Inline model#MMethod#is_init (var73) on <var73:MMethod> */
+var78 = var73->attrs[COLOR_nit__model__MMethod___is_init].s; /* _is_init on <var73:MMethod> */
+var76 = var78;
+RET_LABEL77:(void)0;
+}
+}
+if (var76){
+{
+{ /* Inline typing#TypeVisitor#mpropdef (var_v) on <var_v:TypeVisitor> */
+var81 = var_v->attrs[COLOR_nit__typing__TypeVisitor___mpropdef].val; /* _mpropdef on <var_v:TypeVisitor> */
+var79 = var81;
+RET_LABEL80:(void)0;
+}
+}
+var_vmpropdef = var79;
+/* <var_vmpropdef:nullable MPropDef> isa MMethodDef */
+cltype84 = type_nit__MMethodDef.color;
+idtype85 = type_nit__MMethodDef.id;
+if(var_vmpropdef == NULL) {
+var83 = 0;
+} else {
+if(cltype84 >= var_vmpropdef->type->table_size) {
+var83 = 0;
+} else {
+var83 = var_vmpropdef->type->type_table[cltype84] == idtype85;
+}
+}
+var_86 = var83;
+if (var83){
+{
+{ /* Inline model#MPropDef#mproperty (var_vmpropdef) on <var_vmpropdef:nullable MPropDef(MMethodDef)> */
+var89 = var_vmpropdef->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var_vmpropdef:nullable MPropDef(MMethodDef)> */
+if (unlikely(var89 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
+fatal_exit(1);
+}
+var87 = var89;
+RET_LABEL88:(void)0;
+}
+}
+{
+{ /* Inline model#MMethod#is_init (var87) on <var87:MProperty(MMethod)> */
+var92 = var87->attrs[COLOR_nit__model__MMethod___is_init].s; /* _is_init on <var87:MProperty(MMethod)> */
+var90 = var92;
+RET_LABEL91:(void)0;
+}
+}
+var82 = var90;
+} else {
+var82 = var_86;
+}
+var93 = !var82;
+if (var93){
+if (likely(varonce94!=NULL)) {
+var95 = varonce94;
+} else {
+var96 = "Error: an `init` can only be called from another `init`.";
+var97 = standard___standard__NativeString___to_s_with_length(var96, 56l);
+var95 = var97;
+varonce94 = var95;
+}
+{
+nit__typing___nit__typing__TypeVisitor___error(var_v, var_node, var95); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
+}
+} else {
+}
+/* <var_vmpropdef:nullable MPropDef> isa MMethodDef */
+cltype101 = type_nit__MMethodDef.color;
+idtype102 = type_nit__MMethodDef.id;
+if(var_vmpropdef == NULL) {
+var100 = 0;
+} else {
+if(cltype101 >= var_vmpropdef->type->table_size) {
+var100 = 0;
+} else {
+var100 = var_vmpropdef->type->type_table[cltype101] == idtype102;
+}
+}
+var_103 = var100;
+if (var100){
+{
+{ /* Inline model#MPropDef#mproperty (var_vmpropdef) on <var_vmpropdef:nullable MPropDef(MMethodDef)> */
+var106 = var_vmpropdef->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var_vmpropdef:nullable MPropDef(MMethodDef)> */
+if (unlikely(var106 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
+fatal_exit(1);
+}
+var104 = var106;
+RET_LABEL105:(void)0;
+}
+}
+{
+{ /* Inline model#MMethod#is_root_init (var104) on <var104:MProperty(MMethod)> */
+var109 = var104->attrs[COLOR_nit__model__MMethod___is_root_init].s; /* _is_root_init on <var104:MProperty(MMethod)> */
+var107 = var109;
+RET_LABEL108:(void)0;
+}
+}
+var99 = var107;
+} else {
+var99 = var_103;
+}
+var_110 = var99;
+if (var99){
+{
+{ /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:nullable Object(CallSite)> */
+var113 = var_callsite->attrs[COLOR_nit__typing__CallSite___mproperty].val; /* _mproperty on <var_callsite:nullable Object(CallSite)> */
+if (unlikely(var113 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing, 624);
+fatal_exit(1);
+}
+var111 = var113;
+RET_LABEL112:(void)0;
+}
+}
+{
+{ /* Inline model#MMethod#is_root_init (var111) on <var111:MMethod> */
+var116 = var111->attrs[COLOR_nit__model__MMethod___is_root_init].s; /* _is_root_init on <var111:MMethod> */
+var114 = var116;
+RET_LABEL115:(void)0;
+}
+}
+var117 = !var114;
+var98 = var117;
+} else {
+var98 = var_110;
+}
+if (var98){
+if (unlikely(varonce118==NULL)) {
+var119 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
+if (likely(varonce120!=NULL)) {
+var121 = varonce120;
+} else {
+var122 = "Error: `";
+var123 = standard___standard__NativeString___to_s_with_length(var122, 8l);
+var121 = var123;
+varonce120 = var121;
+}
+((struct instance_standard__NativeArray*)var119)->values[0]=var121;
+if (likely(varonce124!=NULL)) {
+var125 = varonce124;
+} else {
+var126 = "` cannot call a factory `";
+var127 = standard___standard__NativeString___to_s_with_length(var126, 25l);
+var125 = var127;
+varonce124 = var125;
+}
+((struct instance_standard__NativeArray*)var119)->values[2]=var125;
+if (likely(varonce128!=NULL)) {
+var129 = varonce128;
+} else {
+var130 = "`.";
+var131 = standard___standard__NativeString___to_s_with_length(var130, 2l);
+var129 = var131;
+varonce128 = var129;
+}
+((struct instance_standard__NativeArray*)var119)->values[4]=var129;
+} else {
+var119 = varonce118;
+varonce118 = NULL;
+}
+{
+var132 = ((val*(*)(val* self))(var_vmpropdef->class->vft[COLOR_standard__string__Object__to_s]))(var_vmpropdef); /* to_s on <var_vmpropdef:nullable MPropDef(MMethodDef)>*/
+}
+((struct instance_standard__NativeArray*)var119)->values[1]=var132;
+{
+{ /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:nullable Object(CallSite)> */
+var135 = var_callsite->attrs[COLOR_nit__typing__CallSite___mproperty].val; /* _mproperty on <var_callsite:nullable Object(CallSite)> */
+if (unlikely(var135 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing, 624);
+fatal_exit(1);
+}
+var133 = var135;
+RET_LABEL134:(void)0;
+}
+}
+{
+var136 = ((val*(*)(val* self))(var133->class->vft[COLOR_standard__string__Object__to_s]))(var133); /* to_s on <var133:MMethod>*/
+}
+((struct instance_standard__NativeArray*)var119)->values[3]=var136;
+{
+var137 = ((val*(*)(val* self))(var119->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var119); /* native_to_s on <var119:NativeArray[String]>*/
+}
+varonce118 = var119;
+{
+nit__typing___nit__typing__TypeVisitor___error(var_v, var_node, var137); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
+}
+} else {
+}
+} else {
+}
+{
+{ /* Inline model#MSignature#return_mtype (var_msignature) on <var_msignature:MSignature> */
+var140 = var_msignature->attrs[COLOR_nit__model__MSignature___return_mtype].val; /* _return_mtype on <var_msignature:MSignature> */
+var138 = var140;
+RET_LABEL139:(void)0;
+}
+}
+var_ret = var138;
+if (var_ret == NULL) {
+var141 = 0; /* is null */
+} else {
+var141 = 1; /* arg is null and recv is not */
+}
+if (0) {
+{ /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
+var_other29 = ((val*)NULL);
+{
+var144 = ((short int(*)(val* self, val* p0))(var_ret->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_ret, var_other29); /* == on <var_ret:nullable MType(MType)>*/
+}
+var145 = !var144;
+var142 = var145;
+goto RET_LABEL143;
+RET_LABEL143:(void)0;
+}
+var141 = var142;
+}
+if (var141){
+{
+{ /* Inline typing#AExpr#mtype= (self,var_ret) on <self:ASendExpr> */
+self->attrs[COLOR_nit__typing__AExpr___mtype].val = var_ret; /* _mtype on <self:ASendExpr> */
+RET_LABEL146:(void)0;
+}
+}
+} else {
+{
+{ /* Inline typing#AExpr#is_typed= (self,1) on <self:ASendExpr> */
+self->attrs[COLOR_nit__typing__AExpr___is_typed].s = 1; /* _is_typed on <self:ASendExpr> */
+RET_LABEL147:(void)0;
+}
+}
+}
+RET_LABEL:;
+}
+/* method typing#ASendExpr#property_node for (self: ASendExpr): ANode */
+val* nit__typing___ASendExpr___property_node(val* self) {
+val* var /* : ANode */;
+var = self;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ASendExpr#raw_arguments for (self: ASendExpr): Array[AExpr] */
+val* nit__typing___ASendExpr___raw_arguments(val* self) {
+val* var /* : Array[AExpr] */;
+val* var1 /* : Array[AExpr] */;
+{
+var1 = ((val*(*)(val* self))(self->class->vft[COLOR_nit__typing__ASendExpr__compute_raw_arguments]))(self); /* compute_raw_arguments on <self:ASendExpr>*/
+}
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ABinopExpr#compute_raw_arguments for (self: ABinopExpr): Array[AExpr] */
+val* nit__typing___ABinopExpr___ASendExpr__compute_raw_arguments(val* self) {
+val* var /* : Array[AExpr] */;
+val* var1 /* : Array[AExpr] */;
+val* var_ /* var : Array[AExpr] */;
+val* var2 /* : AExpr */;
+val* var4 /* : AExpr */;
+var1 = NEW_standard__Array(&type_standard__Array__nit__AExpr);
+{
+standard___standard__Array___with_capacity(var1, 1l); /* Direct call array#Array#with_capacity on <var1:Array[AExpr]>*/
+}
+var_ = var1;
+{
+{ /* Inline parser_nodes#ABinopExpr#n_expr2 (self) on <self:ABinopExpr> */
+var4 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on <self:ABinopExpr> */
+if (unlikely(var4 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2036);
+fatal_exit(1);
+}
+var2 = var4;
+RET_LABEL3:(void)0;
+}
+}
+{
+standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var_, var2); /* Direct call array#AbstractArray#push on <var_:Array[AExpr]>*/
+}
+var = var_;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ABinopExpr#property_name for (self: ABinopExpr): String */
+val* nit__typing___ABinopExpr___ASendExpr__property_name(val* self) {
+val* var /* : String */;
+val* var1 /* : String */;
+{
+var1 = ((val*(*)(val* self))(self->class->vft[COLOR_nit__parser_nodes__ABinopExpr__operator]))(self); /* operator on <self:ABinopExpr>*/
+}
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ABinopExpr#property_node for (self: ABinopExpr): ANode */
+val* nit__typing___ABinopExpr___ASendExpr__property_node(val* self) {
+val* var /* : ANode */;
+val* var1 /* : Token */;
+val* var3 /* : Token */;
+{
+{ /* Inline parser_nodes#ABinopExpr#n_op (self) on <self:ABinopExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on <self:ABinopExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2033);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#AEqExpr#accept_typing for (self: AEqExpr, TypeVisitor) */
+void nit__typing___AEqExpr___AExpr__accept_typing(val* self, val* p0) {
+val* var_v /* var v: TypeVisitor */;
+var_v = p0;
+{
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__typing___AEqExpr___AExpr__accept_typing]))(self, p0); /* accept_typing on <self:AEqExpr>*/
+}
+{
+nit__typing___nit__typing__TypeVisitor___null_test(var_v, self); /* Direct call typing#TypeVisitor#null_test on <var_v:TypeVisitor>*/
+}
+RET_LABEL:;
+}
+/* method typing#ANeExpr#accept_typing for (self: ANeExpr, TypeVisitor) */
+void nit__typing___ANeExpr___AExpr__accept_typing(val* self, val* p0) {
+val* var_v /* var v: TypeVisitor */;
+var_v = p0;
+{
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__typing___ANeExpr___AExpr__accept_typing]))(self, p0); /* accept_typing on <self:ANeExpr>*/
+}
+{
+nit__typing___nit__typing__TypeVisitor___null_test(var_v, self); /* Direct call typing#TypeVisitor#null_test on <var_v:TypeVisitor>*/
+}
+RET_LABEL:;
+}
+/* method typing#AUnaryopExpr#property_name for (self: AUnaryopExpr): String */
+val* nit__typing___AUnaryopExpr___ASendExpr__property_name(val* self) {
+val* var /* : String */;
+val* var1 /* : NativeArray[String] */;
+static val* varonce;
+static val* varonce2;
+val* var3 /* : String */;
+char* var4 /* : NativeString */;
+val* var5 /* : FlatString */;
+val* var6 /* : String */;
+val* var7 /* : String */;
+if (unlikely(varonce==NULL)) {
+var1 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
+if (likely(varonce2!=NULL)) {
+var3 = varonce2;
+} else {
+var4 = "unary ";
+var5 = standard___standard__NativeString___to_s_with_length(var4, 6l);
+var3 = var5;
+varonce2 = var3;
+}
+((struct instance_standard__NativeArray*)var1)->values[0]=var3;
+} else {
+var1 = varonce;
+varonce = NULL;
+}
+{
+var6 = ((val*(*)(val* self))(self->class->vft[COLOR_nit__parser_nodes__AUnaryopExpr__operator]))(self); /* operator on <self:AUnaryopExpr>*/
+}
+((struct instance_standard__NativeArray*)var1)->values[1]=var6;
+{
+var7 = ((val*(*)(val* self))(var1->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1); /* native_to_s on <var1:NativeArray[String]>*/
+}
+varonce = var1;
+var = var7;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#AUnaryopExpr#compute_raw_arguments for (self: AUnaryopExpr): Array[AExpr] */
+val* nit__typing___AUnaryopExpr___ASendExpr__compute_raw_arguments(val* self) {
+val* var /* : Array[AExpr] */;
+val* var1 /* : Array[AExpr] */;
+var1 = NEW_standard__Array(&type_standard__Array__nit__AExpr);
+{
+standard___standard__Array___standard__kernel__Object__init(var1); /* Direct call array#Array#init on <var1:Array[AExpr]>*/
+}
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ACallExpr#property_name for (self: ACallExpr): String */
+val* nit__typing___ACallExpr___ASendExpr__property_name(val* self) {
+val* var /* : String */;
+val* var1 /* : TId */;
+val* var3 /* : TId */;
+val* var4 /* : String */;
+{
+{ /* Inline parser_nodes#ACallFormExpr#n_id (self) on <self:ACallExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on <self:ACallExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2292);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+{
+var4 = nit__lexer_work___Token___text(var1);
+}
+var = var4;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ACallExpr#property_node for (self: ACallExpr): ANode */
+val* nit__typing___ACallExpr___ASendExpr__property_node(val* self) {
+val* var /* : ANode */;
+val* var1 /* : TId */;
+val* var3 /* : TId */;
+{
+{ /* Inline parser_nodes#ACallFormExpr#n_id (self) on <self:ACallExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on <self:ACallExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2292);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ACallExpr#compute_raw_arguments for (self: ACallExpr): Array[AExpr] */
+val* nit__typing___ACallExpr___ASendExpr__compute_raw_arguments(val* self) {
+val* var /* : Array[AExpr] */;
+val* var1 /* : AExprs */;
+val* var3 /* : AExprs */;
+val* var4 /* : Array[AExpr] */;
+{
+{ /* Inline parser_nodes#ACallFormExpr#n_args (self) on <self:ACallExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val; /* _n_args on <self:ACallExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2295);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+{
+var4 = nit__typing___AExprs___to_a(var1);
+}
+var = var4;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ACallAssignExpr#property_name for (self: ACallAssignExpr): String */
+val* nit__typing___ACallAssignExpr___ASendExpr__property_name(val* self) {
+val* var /* : String */;
+val* var1 /* : TId */;
+val* var3 /* : TId */;
+val* var4 /* : String */;
+static val* varonce;
+val* var5 /* : String */;
+char* var6 /* : NativeString */;
+val* var7 /* : FlatString */;
+val* var8 /* : String */;
+{
+{ /* Inline parser_nodes#ACallFormExpr#n_id (self) on <self:ACallAssignExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on <self:ACallAssignExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2292);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+{
+var4 = nit__lexer_work___Token___text(var1);
+}
+if (likely(varonce!=NULL)) {
+var5 = varonce;
+} else {
+var6 = "=";
+var7 = standard___standard__NativeString___to_s_with_length(var6, 1l);
+var5 = var7;
+varonce = var5;
+}
+{
+var8 = ((val*(*)(val* self, val* p0))(var4->class->vft[COLOR_standard__string__String___43d]))(var4, var5); /* + on <var4:String>*/
+}
+var = var8;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ACallAssignExpr#property_node for (self: ACallAssignExpr): ANode */
+val* nit__typing___ACallAssignExpr___ASendExpr__property_node(val* self) {
+val* var /* : ANode */;
+val* var1 /* : TId */;
+val* var3 /* : TId */;
+{
+{ /* Inline parser_nodes#ACallFormExpr#n_id (self) on <self:ACallAssignExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on <self:ACallAssignExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2292);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ACallAssignExpr#compute_raw_arguments for (self: ACallAssignExpr): Array[AExpr] */
+val* nit__typing___ACallAssignExpr___ASendExpr__compute_raw_arguments(val* self) {
+val* var /* : Array[AExpr] */;
+val* var1 /* : AExprs */;
+val* var3 /* : AExprs */;
+val* var4 /* : Array[AExpr] */;
+val* var_res /* var res: Array[AExpr] */;
+val* var5 /* : AExpr */;
+val* var7 /* : AExpr */;
+{
+{ /* Inline parser_nodes#ACallFormExpr#n_args (self) on <self:ACallAssignExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val; /* _n_args on <self:ACallAssignExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2295);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+{
+var4 = nit__typing___AExprs___to_a(var1);
+}
+var_res = var4;
+{
+{ /* Inline parser_nodes#AAssignFormExpr#n_value (self) on <self:ACallAssignExpr> */
+var7 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on <self:ACallAssignExpr> */
+if (unlikely(var7 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1995);
+fatal_exit(1);
+}
+var5 = var7;
+RET_LABEL6:(void)0;
+}
+}
+{
+standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_res, var5); /* Direct call array#Array#add on <var_res:Array[AExpr]>*/
+}
+var = var_res;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ABraExpr#property_name for (self: ABraExpr): String */
+val* nit__typing___ABraExpr___ASendExpr__property_name(val* self) {
+val* var /* : String */;
+static val* varonce;
+val* var1 /* : String */;
+char* var2 /* : NativeString */;
+val* var3 /* : FlatString */;
+if (likely(varonce!=NULL)) {
+var1 = varonce;
+} else {
+var2 = "[]";
+var3 = standard___standard__NativeString___to_s_with_length(var2, 2l);
+var1 = var3;
+varonce = var1;
+}
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ABraExpr#compute_raw_arguments for (self: ABraExpr): Array[AExpr] */
+val* nit__typing___ABraExpr___ASendExpr__compute_raw_arguments(val* self) {
+val* var /* : Array[AExpr] */;
+val* var1 /* : AExprs */;
+val* var3 /* : AExprs */;
+val* var4 /* : Array[AExpr] */;
+{
+{ /* Inline parser_nodes#ABraFormExpr#n_args (self) on <self:ABraExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val; /* _n_args on <self:ABraExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2364);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+{
+var4 = nit__typing___AExprs___to_a(var1);
+}
+var = var4;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ABraAssignExpr#property_name for (self: ABraAssignExpr): String */
+val* nit__typing___ABraAssignExpr___ASendExpr__property_name(val* self) {
+val* var /* : String */;
+static val* varonce;
+val* var1 /* : String */;
+char* var2 /* : NativeString */;
+val* var3 /* : FlatString */;
+if (likely(varonce!=NULL)) {
+var1 = varonce;
+} else {
+var2 = "[]=";
+var3 = standard___standard__NativeString___to_s_with_length(var2, 3l);
+var1 = var3;
+varonce = var1;
+}
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ABraAssignExpr#compute_raw_arguments for (self: ABraAssignExpr): Array[AExpr] */
+val* nit__typing___ABraAssignExpr___ASendExpr__compute_raw_arguments(val* self) {
+val* var /* : Array[AExpr] */;
+val* var1 /* : AExprs */;
+val* var3 /* : AExprs */;
+val* var4 /* : Array[AExpr] */;
+val* var_res /* var res: Array[AExpr] */;
+val* var5 /* : AExpr */;
+val* var7 /* : AExpr */;
+{
+{ /* Inline parser_nodes#ABraFormExpr#n_args (self) on <self:ABraAssignExpr> */
+var3 = self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val; /* _n_args on <self:ABraAssignExpr> */
+if (unlikely(var3 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2364);
+fatal_exit(1);
+}
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+{
+var4 = nit__typing___AExprs___to_a(var1);
+}
+var_res = var4;
+{
+{ /* Inline parser_nodes#AAssignFormExpr#n_value (self) on <self:ABraAssignExpr> */
+var7 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on <self:ABraAssignExpr> */
+if (unlikely(var7 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1995);
+fatal_exit(1);
+}
+var5 = var7;
+RET_LABEL6:(void)0;
+}
+}
+{
+standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_res, var5); /* Direct call array#Array#add on <var_res:Array[AExpr]>*/
+}
+var = var_res;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method typing#ASendReassignFormExpr#write_callsite for (self: ASendReassignFormExpr): nullable CallSite */
+val* nit__typing___ASendReassignFormExpr___write_callsite(val* self) {
+val* var /* : nullable CallSite */;
+val* var1 /* : nullable CallSite */;
+var1 = self->attrs[COLOR_nit__typing__ASendReassignFormExpr___write_callsite].val; /* _write_callsite on <self:ASendReassignFormExpr> */
+var = var1;
+RET_LABEL:;
+return var;
+}
+/* method typing#ASendReassignFormExpr#write_callsite= for (self: ASendReassignFormExpr, nullable CallSite) */
+void nit__typing___ASendReassignFormExpr___write_callsite_61d(val* self, val* p0) {
+self->attrs[COLOR_nit__typing__ASendReassignFormExpr___write_callsite].val = p0; /* _write_callsite on <self:ASendReassignFormExpr> */
+RET_LABEL:;
+}
+/* method typing#ASendReassignFormExpr#accept_typing for (self: ASendReassignFormExpr, TypeVisitor) */
+void nit__typing___ASendReassignFormExpr___AExpr__accept_typing(val* self, val* p0) {
+val* var_v /* var v: TypeVisitor */;
+val* var /* : AExpr */;
+val* var2 /* : AExpr */;
+val* var3 /* : nullable MType */;
+val* var_recvtype /* var recvtype: nullable MType */;
+val* var4 /* : String */;
+val* var_name /* var name: String */;
+val* var5 /* : ANode */;
+val* var_node /* var node: ANode */;
+short int var6 /* : Bool */;
+short int var7 /* : Bool */;
+val* var_other /* var other: nullable Object */;
+short int var9 /* : Bool */;
+short int var11 /* : Bool */;
+val* var12 /* : AExpr */;
+val* var14 /* : AExpr */;
+short int var15 /* : Bool */;
+int cltype;
+int idtype;
+short int var_for_self /* var for_self: Bool */;
+val* var16 /* : nullable CallSite */;
+val* var_callsite /* var callsite: nullable CallSite */;
+short int var17 /* : Bool */;
+short int var18 /* : Bool */;
+short int var20 /* : Bool */;
+short int var22 /* : Bool */;
+val* var24 /* : Array[AExpr] */;
+val* var_args /* var args: Array[AExpr] */;
+short int var25 /* : Bool */;
+val* var26 /* : MSignature */;
+val* var28 /* : MSignature */;
+val* var29 /* : nullable MType */;
+val* var31 /* : nullable MType */;
+val* var_readtype /* var readtype: nullable MType */;
+short int var32 /* : Bool */;
+short int var33 /* : Bool */;
+short int var35 /* : Bool */;
+short int var37 /* : Bool */;
+val* var38 /* : NativeArray[String] */;
+static val* varonce;
+static val* varonce39;
+val* var40 /* : String */;
+char* var41 /* : NativeString */;
+val* var42 /* : FlatString */;
+static val* varonce43;
+val* var44 /* : String */;
+char* var45 /* : NativeString */;
+val* var46 /* : FlatString */;
+val* var47 /* : String */;
+static val* varonce48;
+val* var49 /* : String */;
+char* var50 /* : NativeString */;
+val* var51 /* : FlatString */;
+val* var52 /* : String */;
+val* var53 /* : AExpr */;
+val* var55 /* : AExpr */;
+short int var56 /* : Bool */;
+int cltype57;
+int idtype58;
+val* var59 /* : nullable CallSite */;
+val* var_wcallsite /* var wcallsite: nullable CallSite */;
+short int var60 /* : Bool */;
+short int var61 /* : Bool */;
+short int var63 /* : Bool */;
+short int var65 /* : Bool */;
+val* var67 /* : MSignature */;
+val* var69 /* : MSignature */;
+val* var70 /* : Array[MParameter] */;
+val* var72 /* : Array[MParameter] */;
+val* var73 /* : nullable Object */;
+val* var74 /* : MType */;
+val* var76 /* : MType */;
+val* var77 /* : nullable MType */;
+val* var_wtype /* var wtype: nullable MType */;
+short int var78 /* : Bool */;
+short int var79 /* : Bool */;
+short int var81 /* : Bool */;
+short int var83 /* : Bool */;
+val* var84 /* : Array[nullable Object] */;
+val* var85 /* : AExpr */;
+val* var87 /* : AExpr */;
+short int var88 /* : Bool */;
+var_v = p0;
+{
+{ /* Inline parser_nodes#ASendExpr#n_expr (self) on <self:ASendReassignFormExpr> */
+var2 = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on <self:ASendReassignFormExpr> */
+if (unlikely(var2 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
+PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2025);
+fatal_exit(1);
+}
+var = var2;
+RET_LABEL1:(void)0;
+}
+}
+{
+var3 = nit__typing___nit__typing__TypeVisitor___visit_expr(var_v, var);
+}
+var_recvtype = var3;
+{
+var4 = ((val*(*)(val* self))(self->class->vft[COLOR_nit__typing__ASendExpr__property_name]))(self); /* property_name on <self:ASendReassignFormExpr>*/