-/* method abstract_compiler#AbstractCompilerVisitor#string_instance for (self: AbstractCompilerVisitor, String): RuntimeVariable */
-val* nit___nit__AbstractCompilerVisitor___string_instance(val* self, val* p0) {
-val* var /* : RuntimeVariable */;
-val* var_string /* var string: String */;
-static val* varonce;
-val* var1 /* : String */;
-char* var2 /* : NativeString */;
-long var3 /* : Int */;
-val* var4 /* : FlatString */;
-val* var5 /* : MClass */;
-val* var6 /* : MClassType */;
-val* var8 /* : MClassType */;
-val* var_mtype /* var mtype: MClassType */;
-static val* varonce9;
-val* var10 /* : String */;
-char* var11 /* : NativeString */;
-long var12 /* : Int */;
-val* var13 /* : FlatString */;
-val* var14 /* : String */;
-val* var_name /* var name: String */;
-static val* varonce15;
-val* var16 /* : String */;
-char* var17 /* : NativeString */;
-long var18 /* : Int */;
-val* var19 /* : FlatString */;
-val* var20 /* : String */;
-static val* varonce21;
-val* var22 /* : String */;
-char* var23 /* : NativeString */;
-long var24 /* : Int */;
-val* var25 /* : FlatString */;
-static val* varonce26;
-val* var27 /* : String */;
-char* var28 /* : NativeString */;
-long var29 /* : Int */;
-val* var30 /* : FlatString */;
-val* var31 /* : Array[Object] */;
-long var32 /* : Int */;
-val* var33 /* : NativeArray[Object] */;
-val* var34 /* : String */;
-val* var35 /* : RuntimeVariable */;
-val* var_res /* var res: RuntimeVariable */;
-static val* varonce36;
-val* var37 /* : String */;
-char* var38 /* : NativeString */;
-long var39 /* : Int */;
-val* var40 /* : FlatString */;
-static val* varonce41;
-val* var42 /* : String */;
-char* var43 /* : NativeString */;
-long var44 /* : Int */;
-val* var45 /* : FlatString */;
-val* var46 /* : Array[Object] */;
-long var47 /* : Int */;
-val* var48 /* : NativeArray[Object] */;
-val* var49 /* : String */;
-static val* varonce50;
-val* var51 /* : String */;
-char* var52 /* : NativeString */;
-long var53 /* : Int */;
-val* var54 /* : FlatString */;
-static val* varonce55;
-val* var56 /* : String */;
-char* var57 /* : NativeString */;
-long var58 /* : Int */;
-val* var59 /* : FlatString */;
-val* var60 /* : Array[Object] */;
-long var61 /* : Int */;
-val* var62 /* : NativeArray[Object] */;
-val* var63 /* : String */;
-static val* varonce64;
-val* var65 /* : String */;
-char* var66 /* : NativeString */;
-long var67 /* : Int */;
-val* var68 /* : FlatString */;
-static val* varonce69;
-val* var70 /* : String */;
-char* var71 /* : NativeString */;
-long var72 /* : Int */;
-val* var73 /* : FlatString */;
-val* var74 /* : MClass */;
-val* var75 /* : MClassType */;
-val* var77 /* : MClassType */;
-val* var_native_mtype /* var native_mtype: MClassType */;
-val* var78 /* : RuntimeVariable */;
-val* var_nat /* var nat: RuntimeVariable */;
-static val* varonce79;
-val* var80 /* : String */;
-char* var81 /* : NativeString */;
-long var82 /* : Int */;
-val* var83 /* : FlatString */;
-val* var84 /* : String */;
-static val* varonce85;
-val* var86 /* : String */;
-char* var87 /* : NativeString */;
-long var88 /* : Int */;
-val* var89 /* : FlatString */;
-val* var90 /* : Array[Object] */;
-long var91 /* : Int */;
-val* var92 /* : NativeArray[Object] */;
-val* var93 /* : String */;
-long var94 /* : Int */;
-val* var95 /* : RuntimeVariable */;
-val* var_length /* var length: RuntimeVariable */;
-static val* varonce96;
-val* var97 /* : String */;
-char* var98 /* : NativeString */;
-long var99 /* : Int */;
-val* var100 /* : FlatString */;
-static val* varonce101;
-val* var102 /* : String */;
-char* var103 /* : NativeString */;
-long var104 /* : Int */;
-val* var105 /* : FlatString */;
-val* var106 /* : MMethod */;
-val* var107 /* : Array[RuntimeVariable] */;
-long var108 /* : Int */;
-val* var_ /* var : Array[RuntimeVariable] */;
-val* var109 /* : nullable RuntimeVariable */;
-static val* varonce110;
-val* var111 /* : String */;
-char* var112 /* : NativeString */;
-long var113 /* : Int */;
-val* var114 /* : FlatString */;
-val* var115 /* : Array[Object] */;
-long var116 /* : Int */;
-val* var117 /* : NativeArray[Object] */;
-val* var118 /* : String */;
-static val* varonce119;
-val* var120 /* : String */;
-char* var121 /* : NativeString */;
-long var122 /* : Int */;
-val* var123 /* : FlatString */;
-static val* varonce124;
-val* var125 /* : String */;
-char* var126 /* : NativeString */;
-long var127 /* : Int */;
-val* var128 /* : FlatString */;
-val* var129 /* : Array[Object] */;
-long var130 /* : Int */;
-val* var131 /* : NativeArray[Object] */;
-val* var132 /* : String */;
-static val* varonce133;
-val* var134 /* : String */;
-char* var135 /* : NativeString */;
-long var136 /* : Int */;
-val* var137 /* : FlatString */;
-var_string = p0;
-if (varonce) {
-var1 = varonce;
-} else {
-var2 = "String";
-var3 = 6;
-var4 = standard___standard__NativeString___to_s_with_length(var2, var3);
-var1 = var4;
-varonce = var1;
-}
-{
-var5 = nit___nit__AbstractCompilerVisitor___get_class(self, var1);
-}
-{
-{ /* Inline model#MClass#mclass_type (var5) on <var5:MClass> */
-var8 = var5->attrs[COLOR_nit__model__MClass___mclass_type].val; /* _mclass_type on <var5:MClass> */
-if (unlikely(var8 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 438);
-show_backtrace(1);
-}
-var6 = var8;
-RET_LABEL7:(void)0;
-}
-}
-var_mtype = var6;
-if (varonce9) {
-var10 = varonce9;
-} else {
-var11 = "varonce";
-var12 = 7;
-var13 = standard___standard__NativeString___to_s_with_length(var11, var12);
-var10 = var13;
-varonce9 = var10;
-}
-{
-var14 = nit___nit__AbstractCompilerVisitor___get_name(self, var10);
-}
-var_name = var14;
-if (varonce15) {
-var16 = varonce15;
-} else {
-var17 = "static ";
-var18 = 7;
-var19 = standard___standard__NativeString___to_s_with_length(var17, var18);
-var16 = var19;
-varonce15 = var16;
-}
-{
-var20 = nit__abstract_compiler___MClassType___MType__ctype(var_mtype);
-}
-if (varonce21) {
-var22 = varonce21;
-} else {
-var23 = " ";
-var24 = 1;
-var25 = standard___standard__NativeString___to_s_with_length(var23, var24);
-var22 = var25;
-varonce21 = var22;
-}
-if (varonce26) {
-var27 = varonce26;
-} else {
-var28 = ";";
-var29 = 1;
-var30 = standard___standard__NativeString___to_s_with_length(var28, var29);
-var27 = var30;
-varonce26 = var27;
-}
-var31 = NEW_standard__Array(&type_standard__Array__standard__Object);
-{ /* var31 = array_instance Array[Object] */
-var32 = 5;
-var33 = NEW_standard__NativeArray(var32, &type_standard__NativeArray__standard__Object);
-((struct instance_standard__NativeArray*)var33)->values[0] = (val*) var16;
-((struct instance_standard__NativeArray*)var33)->values[1] = (val*) var20;
-((struct instance_standard__NativeArray*)var33)->values[2] = (val*) var22;
-((struct instance_standard__NativeArray*)var33)->values[3] = (val*) var_name;
-((struct instance_standard__NativeArray*)var33)->values[4] = (val*) var27;
-{
-((void (*)(val* self, val* p0, long p1))(var31->class->vft[COLOR_standard__array__Array__with_native]))(var31, var33, var32) /* with_native on <var31:Array[Object]>*/;
-}
-}
-{
-var34 = ((val* (*)(val* self))(var31->class->vft[COLOR_standard__string__Object__to_s]))(var31) /* to_s on <var31:Array[Object]>*/;
-}
-{
-nit___nit__AbstractCompilerVisitor___add_decl(self, var34); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:AbstractCompilerVisitor>*/
-}
-{
-var35 = nit___nit__AbstractCompilerVisitor___new_var(self, var_mtype);
-}
-var_res = var35;
-if (varonce36) {
-var37 = varonce36;
-} else {
-var38 = "if (";
-var39 = 4;
-var40 = standard___standard__NativeString___to_s_with_length(var38, var39);
-var37 = var40;
-varonce36 = var37;
-}
-if (varonce41) {
-var42 = varonce41;
-} else {
-var43 = ") {";
-var44 = 3;
-var45 = standard___standard__NativeString___to_s_with_length(var43, var44);
-var42 = var45;
-varonce41 = var42;
-}
-var46 = NEW_standard__Array(&type_standard__Array__standard__Object);
-{ /* var46 = array_instance Array[Object] */
-var47 = 3;
-var48 = NEW_standard__NativeArray(var47, &type_standard__NativeArray__standard__Object);
-((struct instance_standard__NativeArray*)var48)->values[0] = (val*) var37;
-((struct instance_standard__NativeArray*)var48)->values[1] = (val*) var_name;
-((struct instance_standard__NativeArray*)var48)->values[2] = (val*) var42;
-{
-((void (*)(val* self, val* p0, long p1))(var46->class->vft[COLOR_standard__array__Array__with_native]))(var46, var48, var47) /* with_native on <var46:Array[Object]>*/;
-}
-}
-{
-var49 = ((val* (*)(val* self))(var46->class->vft[COLOR_standard__string__Object__to_s]))(var46) /* to_s on <var46:Array[Object]>*/;
-}
-{
-nit___nit__AbstractCompilerVisitor___add(self, var49); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
-}
-if (varonce50) {
-var51 = varonce50;
-} else {
-var52 = " = ";
-var53 = 3;
-var54 = standard___standard__NativeString___to_s_with_length(var52, var53);
-var51 = var54;
-varonce50 = var51;
-}
-if (varonce55) {
-var56 = varonce55;
-} else {
-var57 = ";";
-var58 = 1;
-var59 = standard___standard__NativeString___to_s_with_length(var57, var58);
-var56 = var59;
-varonce55 = var56;
-}
-var60 = NEW_standard__Array(&type_standard__Array__standard__Object);
-{ /* var60 = array_instance Array[Object] */
-var61 = 4;
-var62 = NEW_standard__NativeArray(var61, &type_standard__NativeArray__standard__Object);
-((struct instance_standard__NativeArray*)var62)->values[0] = (val*) var_res;
-((struct instance_standard__NativeArray*)var62)->values[1] = (val*) var51;
-((struct instance_standard__NativeArray*)var62)->values[2] = (val*) var_name;
-((struct instance_standard__NativeArray*)var62)->values[3] = (val*) var56;
-{
-((void (*)(val* self, val* p0, long p1))(var60->class->vft[COLOR_standard__array__Array__with_native]))(var60, var62, var61) /* with_native on <var60:Array[Object]>*/;
-}
-}
-{
-var63 = ((val* (*)(val* self))(var60->class->vft[COLOR_standard__string__Object__to_s]))(var60) /* to_s on <var60:Array[Object]>*/;
-}
-{
-nit___nit__AbstractCompilerVisitor___add(self, var63); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
-}
-if (varonce64) {
-var65 = varonce64;
-} else {
-var66 = "} else {";
-var67 = 8;
-var68 = standard___standard__NativeString___to_s_with_length(var66, var67);
-var65 = var68;
-varonce64 = var65;
-}
-{
-nit___nit__AbstractCompilerVisitor___add(self, var65); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
-}
-if (varonce69) {
-var70 = varonce69;
-} else {
-var71 = "NativeString";
-var72 = 12;
-var73 = standard___standard__NativeString___to_s_with_length(var71, var72);
-var70 = var73;
-varonce69 = var70;
-}
-{
-var74 = nit___nit__AbstractCompilerVisitor___get_class(self, var70);
-}
-{
-{ /* Inline model#MClass#mclass_type (var74) on <var74:MClass> */
-var77 = var74->attrs[COLOR_nit__model__MClass___mclass_type].val; /* _mclass_type on <var74:MClass> */
-if (unlikely(var77 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 438);
-show_backtrace(1);
-}
-var75 = var77;
-RET_LABEL76:(void)0;
-}
-}
-var_native_mtype = var75;
-{
-var78 = nit___nit__AbstractCompilerVisitor___new_var(self, var_native_mtype);
-}
-var_nat = var78;
-if (varonce79) {
-var80 = varonce79;
-} else {
-var81 = " = \"";
-var82 = 4;
-var83 = standard___standard__NativeString___to_s_with_length(var81, var82);
-var80 = var83;
-varonce79 = var80;
-}
-{
-var84 = standard___standard__Text___escape_to_c(var_string);
-}
-if (varonce85) {
-var86 = varonce85;
-} else {
-var87 = "\";";
-var88 = 2;
-var89 = standard___standard__NativeString___to_s_with_length(var87, var88);
-var86 = var89;
-varonce85 = var86;
-}
-var90 = NEW_standard__Array(&type_standard__Array__standard__Object);
-{ /* var90 = array_instance Array[Object] */
-var91 = 4;
-var92 = NEW_standard__NativeArray(var91, &type_standard__NativeArray__standard__Object);
-((struct instance_standard__NativeArray*)var92)->values[0] = (val*) var_nat;
-((struct instance_standard__NativeArray*)var92)->values[1] = (val*) var80;
-((struct instance_standard__NativeArray*)var92)->values[2] = (val*) var84;
-((struct instance_standard__NativeArray*)var92)->values[3] = (val*) var86;
-{
-((void (*)(val* self, val* p0, long p1))(var90->class->vft[COLOR_standard__array__Array__with_native]))(var90, var92, var91) /* with_native on <var90:Array[Object]>*/;
-}
-}
-{
-var93 = ((val* (*)(val* self))(var90->class->vft[COLOR_standard__string__Object__to_s]))(var90) /* to_s on <var90:Array[Object]>*/;
-}
-{
-nit___nit__AbstractCompilerVisitor___add(self, var93); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
-}
-{
-var94 = ((long (*)(val* self))(var_string->class->vft[COLOR_standard__string__Text__length]))(var_string) /* length on <var_string:String>*/;
-}
-{
-var95 = nit___nit__AbstractCompilerVisitor___int_instance(self, var94);
-}
-var_length = var95;
-if (varonce96) {
-var97 = varonce96;
-} else {
-var98 = " = ";
-var99 = 3;
-var100 = standard___standard__NativeString___to_s_with_length(var98, var99);
-var97 = var100;
-varonce96 = var97;
-}
-if (varonce101) {
-var102 = varonce101;
-} else {
-var103 = "to_s_with_length";
-var104 = 16;
-var105 = standard___standard__NativeString___to_s_with_length(var103, var104);
-var102 = var105;
-varonce101 = var102;
-}
-{
-var106 = nit___nit__AbstractCompilerVisitor___get_property(self, var102, var_native_mtype);
-}
-var107 = NEW_standard__Array(&type_standard__Array__nit__RuntimeVariable);
-var108 = 2;
-{
-standard___standard__Array___with_capacity(var107, var108); /* Direct call array#Array#with_capacity on <var107:Array[RuntimeVariable]>*/
-}
-var_ = var107;
-{
-standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var_, var_nat); /* Direct call array#AbstractArray#push on <var_:Array[RuntimeVariable]>*/
-}
-{
-standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var_, var_length); /* Direct call array#AbstractArray#push on <var_:Array[RuntimeVariable]>*/
-}
-{
-var109 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__send(self, var106, var_);
-}
-if (unlikely(var109 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Cast failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1453);
-show_backtrace(1);
-}
-if (varonce110) {
-var111 = varonce110;
-} else {
-var112 = ";";
-var113 = 1;
-var114 = standard___standard__NativeString___to_s_with_length(var112, var113);
-var111 = var114;
-varonce110 = var111;
-}
-var115 = NEW_standard__Array(&type_standard__Array__standard__Object);
-{ /* var115 = array_instance Array[Object] */
-var116 = 4;
-var117 = NEW_standard__NativeArray(var116, &type_standard__NativeArray__standard__Object);
-((struct instance_standard__NativeArray*)var117)->values[0] = (val*) var_res;
-((struct instance_standard__NativeArray*)var117)->values[1] = (val*) var97;
-((struct instance_standard__NativeArray*)var117)->values[2] = (val*) var109;
-((struct instance_standard__NativeArray*)var117)->values[3] = (val*) var111;
-{
-((void (*)(val* self, val* p0, long p1))(var115->class->vft[COLOR_standard__array__Array__with_native]))(var115, var117, var116) /* with_native on <var115:Array[Object]>*/;
-}
-}
-{
-var118 = ((val* (*)(val* self))(var115->class->vft[COLOR_standard__string__Object__to_s]))(var115) /* to_s on <var115:Array[Object]>*/;
-}
-{
-nit___nit__AbstractCompilerVisitor___add(self, var118); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
-}
-if (varonce119) {
-var120 = varonce119;
-} else {
-var121 = " = ";
-var122 = 3;
-var123 = standard___standard__NativeString___to_s_with_length(var121, var122);
-var120 = var123;
-varonce119 = var120;
-}
-if (varonce124) {
-var125 = varonce124;
-} else {
-var126 = ";";
-var127 = 1;
-var128 = standard___standard__NativeString___to_s_with_length(var126, var127);
-var125 = var128;
-varonce124 = var125;
-}
-var129 = NEW_standard__Array(&type_standard__Array__standard__Object);
-{ /* var129 = array_instance Array[Object] */
-var130 = 4;
-var131 = NEW_standard__NativeArray(var130, &type_standard__NativeArray__standard__Object);
-((struct instance_standard__NativeArray*)var131)->values[0] = (val*) var_name;
-((struct instance_standard__NativeArray*)var131)->values[1] = (val*) var120;
-((struct instance_standard__NativeArray*)var131)->values[2] = (val*) var_res;
-((struct instance_standard__NativeArray*)var131)->values[3] = (val*) var125;
-{
-((void (*)(val* self, val* p0, long p1))(var129->class->vft[COLOR_standard__array__Array__with_native]))(var129, var131, var130) /* with_native on <var129:Array[Object]>*/;
-}
-}
-{
-var132 = ((val* (*)(val* self))(var129->class->vft[COLOR_standard__string__Object__to_s]))(var129) /* to_s on <var129:Array[Object]>*/;
-}
-{
-nit___nit__AbstractCompilerVisitor___add(self, var132); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
-}
-if (varonce133) {
-var134 = varonce133;
-} else {
-var135 = "}";
-var136 = 1;
-var137 = standard___standard__NativeString___to_s_with_length(var135, var136);
-var134 = var137;
-varonce133 = var134;
-}
-{
-nit___nit__AbstractCompilerVisitor___add(self, var134); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
-}
-var = var_res;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method abstract_compiler#AbstractCompilerVisitor#value_instance for (self: AbstractCompilerVisitor, Object): RuntimeVariable */
-val* nit___nit__AbstractCompilerVisitor___value_instance(val* self, val* p0) {
-val* var /* : RuntimeVariable */;
-val* var_object /* var object: Object */;
-short int var1 /* : Bool */;
-int cltype;
-int idtype;
-val* var2 /* : RuntimeVariable */;
-long var3 /* : Int */;
-short int var4 /* : Bool */;
-int cltype5;
-int idtype6;
-val* var7 /* : RuntimeVariable */;
-short int var8 /* : Bool */;
-short int var9 /* : Bool */;
-int cltype10;
-int idtype11;
-val* var12 /* : RuntimeVariable */;
-var_object = p0;
-/* <var_object:Object> isa Int */
-cltype = type_standard__Int.color;
-idtype = type_standard__Int.id;
-if(cltype >= var_object->type->table_size) {
-var1 = 0;
-} else {
-var1 = var_object->type->type_table[cltype] == idtype;
-}
-if (var1){
-{
-var3 = ((struct instance_standard__Int*)var_object)->value; /* autounbox from Object to Int */;
-var2 = nit___nit__AbstractCompilerVisitor___int_instance(self, var3);
-}
-var = var2;
-goto RET_LABEL;
-} else {
-/* <var_object:Object> isa Bool */
-cltype5 = type_standard__Bool.color;
-idtype6 = type_standard__Bool.id;
-if(cltype5 >= var_object->type->table_size) {
-var4 = 0;
-} else {
-var4 = var_object->type->type_table[cltype5] == idtype6;
-}
-if (var4){
-{
-var8 = ((struct instance_standard__Bool*)var_object)->value; /* autounbox from Object to Bool */;
-var7 = nit___nit__AbstractCompilerVisitor___bool_instance(self, var8);
-}
-var = var7;
-goto RET_LABEL;
-} else {
-/* <var_object:Object> isa String */
-cltype10 = type_standard__String.color;
-idtype11 = type_standard__String.id;
-if(cltype10 >= var_object->type->table_size) {
-var9 = 0;
-} else {
-var9 = var_object->type->type_table[cltype10] == idtype11;
-}
-if (var9){
-{
-var12 = nit___nit__AbstractCompilerVisitor___string_instance(self, var_object);
-}
-var = var12;
-goto RET_LABEL;
-} else {
-PRINT_ERROR("Runtime error: %s", "Aborted");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1468);
-show_backtrace(1);
-}
-}
-}
-RET_LABEL:;
-return var;
-}
-/* method abstract_compiler#AbstractCompilerVisitor#add for (self: AbstractCompilerVisitor, String) */
-void nit___nit__AbstractCompilerVisitor___add(val* self, val* p0) {
-val* var_s /* var s: String */;
-val* var /* : CodeWriter */;
-val* var2 /* : CodeWriter */;
-val* var3 /* : List[String] */;
-val* var5 /* : List[String] */;
-var_s = p0;
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#writer (self) on <self:AbstractCompilerVisitor> */
-var2 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___writer].val; /* _writer on <self:AbstractCompilerVisitor> */
-if (unlikely(var2 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _writer");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1074);
-show_backtrace(1);
-}
-var = var2;
-RET_LABEL1:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#CodeWriter#lines (var) on <var:CodeWriter> */
-var5 = var->attrs[COLOR_nit__abstract_compiler__CodeWriter___lines].val; /* _lines on <var:CodeWriter> */
-if (unlikely(var5 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _lines");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1038);
-show_backtrace(1);
-}
-var3 = var5;
-RET_LABEL4:(void)0;
-}
-}
-{
-standard___standard__Sequence___SimpleCollection__add(var3, var_s); /* Direct call abstract_collection#Sequence#add on <var3:List[String]>*/
-}
-RET_LABEL:;
-}
-/* method abstract_compiler#AbstractCompilerVisitor#add_decl for (self: AbstractCompilerVisitor, String) */
-void nit___nit__AbstractCompilerVisitor___add_decl(val* self, val* p0) {
-val* var_s /* var s: String */;
-val* var /* : CodeWriter */;
-val* var2 /* : CodeWriter */;
-val* var3 /* : List[String] */;
-val* var5 /* : List[String] */;
-var_s = p0;
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#writer (self) on <self:AbstractCompilerVisitor> */
-var2 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___writer].val; /* _writer on <self:AbstractCompilerVisitor> */
-if (unlikely(var2 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _writer");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1074);
-show_backtrace(1);
-}
-var = var2;
-RET_LABEL1:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#CodeWriter#decl_lines (var) on <var:CodeWriter> */
-var5 = var->attrs[COLOR_nit__abstract_compiler__CodeWriter___decl_lines].val; /* _decl_lines on <var:CodeWriter> */
-if (unlikely(var5 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _decl_lines");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1039);
-show_backtrace(1);
-}
-var3 = var5;
-RET_LABEL4:(void)0;
-}
-}
-{
-standard___standard__Sequence___SimpleCollection__add(var3, var_s); /* Direct call abstract_collection#Sequence#add on <var3:List[String]>*/
-}
-RET_LABEL:;
-}
-/* method abstract_compiler#AbstractCompilerVisitor#require_declaration for (self: AbstractCompilerVisitor, String) */
-void nit___nit__AbstractCompilerVisitor___require_declaration(val* self, val* p0) {
-val* var_key /* var key: String */;
-val* var /* : CodeWriter */;
-val* var2 /* : CodeWriter */;
-val* var3 /* : CodeFile */;
-val* var5 /* : CodeFile */;
-val* var6 /* : HashSet[String] */;
-val* var8 /* : HashSet[String] */;
-val* var_reqs /* var reqs: HashSet[String] */;
-short int var9 /* : Bool */;
-val* var10 /* : nullable ANode */;
-val* var12 /* : nullable ANode */;
-val* var_node /* var node: nullable ANode */;
-val* var13 /* : null */;
-short int var14 /* : Bool */;
-short int var15 /* : Bool */;
-val* var_other /* var other: nullable Object */;
-short int var17 /* : Bool */;
-short int var18 /* : Bool */;
-val* var19 /* : AbstractCompiler */;
-val* var21 /* : AbstractCompiler */;
-val* var22 /* : HashMap[String, ANode] */;
-val* var24 /* : HashMap[String, ANode] */;
-var_key = p0;
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#writer (self) on <self:AbstractCompilerVisitor> */
-var2 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___writer].val; /* _writer on <self:AbstractCompilerVisitor> */
-if (unlikely(var2 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _writer");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1074);
-show_backtrace(1);
-}
-var = var2;
-RET_LABEL1:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#CodeWriter#file (var) on <var:CodeWriter> */
-var5 = var->attrs[COLOR_nit__abstract_compiler__CodeWriter___file].val; /* _file on <var:CodeWriter> */
-if (unlikely(var5 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _file");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1037);
-show_backtrace(1);
-}
-var3 = var5;
-RET_LABEL4:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#CodeFile#required_declarations (var3) on <var3:CodeFile> */
-var8 = var3->attrs[COLOR_nit__abstract_compiler__CodeFile___required_declarations].val; /* _required_declarations on <var3:CodeFile> */
-if (unlikely(var8 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _required_declarations");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1032);
-show_backtrace(1);
-}
-var6 = var8;
-RET_LABEL7:(void)0;
-}
-}
-var_reqs = var6;
-{
-var9 = standard___standard__HashSet___standard__abstract_collection__Collection__has(var_reqs, var_key);
-}
-if (var9){
-goto RET_LABEL;
-} else {
-}
-{
-standard___standard__HashSet___standard__abstract_collection__SimpleCollection__add(var_reqs, var_key); /* Direct call hash_collection#HashSet#add on <var_reqs:HashSet[String]>*/
-}
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#current_node (self) on <self:AbstractCompilerVisitor> */
-var12 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___current_node].val; /* _current_node on <self:AbstractCompilerVisitor> */
-var10 = var12;
-RET_LABEL11:(void)0;
-}
-}
-var_node = var10;
-var13 = NULL;
-if (var_node == NULL) {
-var14 = 0; /* is null */
-} else {
-var14 = 1; /* arg is null and recv is not */
-}
-if (0) {
-{ /* Inline kernel#Object#!= (var_node,var13) on <var_node:nullable ANode> */
-var_other = var13;
-{
-var17 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on <var_node:nullable ANode(ANode)>*/;
-}
-var18 = !var17;
-var15 = var18;
-goto RET_LABEL16;
-RET_LABEL16:(void)0;
-}
-var14 = var15;
-}
-if (var14){
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
-var21 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:AbstractCompilerVisitor> */
-if (unlikely(var21 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1059);
-show_backtrace(1);
-}
-var19 = var21;
-RET_LABEL20:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompiler#requirers_of_declarations (var19) on <var19:AbstractCompiler> */
-var24 = var19->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___requirers_of_declarations].val; /* _requirers_of_declarations on <var19:AbstractCompiler> */
-if (unlikely(var24 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _requirers_of_declarations");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 541);
-show_backtrace(1);
-}
-var22 = var24;
-RET_LABEL23:(void)0;
-}
-}
-{
-standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var22, var_key, var_node); /* Direct call hash_collection#HashMap#[]= on <var22:HashMap[String, ANode]>*/
-}
-} else {
-}
-RET_LABEL:;
-}
-/* method abstract_compiler#AbstractCompilerVisitor#declare_once for (self: AbstractCompilerVisitor, String) */
-void nit___nit__AbstractCompilerVisitor___declare_once(val* self, val* p0) {
-val* var_s /* var s: String */;
-val* var /* : AbstractCompiler */;
-val* var2 /* : AbstractCompiler */;
-var_s = p0;
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
-var2 = self->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:AbstractCompilerVisitor> */
-if (unlikely(var2 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1059);
-show_backtrace(1);
-}
-var = var2;
-RET_LABEL1:(void)0;
-}
-}
-{
-nit___nit__AbstractCompiler___provide_declaration(var, var_s, var_s); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on <var:AbstractCompiler>*/
-}
-{
-nit___nit__AbstractCompilerVisitor___require_declaration(self, var_s); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:AbstractCompilerVisitor>*/
-}
-RET_LABEL:;
-}