-/* method file#OFStream#close for (self: OFStream) */
-void standard___standard__OFStream___standard__stream__IOS__close(val* self) {
-val* var /* : nullable NativeFile */;
-val* var1 /* : null */;
-short int var2 /* : Bool */;
-short int var3 /* : Bool */;
-val* var_other /* var other: nullable Object */;
-short int var5 /* : Bool */;
-short int var7 /* : Bool */;
-val* var8 /* : nullable NativeFile */;
-short int var9 /* : Bool */;
-short int var11 /* : Bool for extern */;
-void* var12 /* : Pointer for extern */;
-val* var13 /* : nullable IOError */;
-val* var15 /* : nullable IOError */;
-val* var16 /* : null */;
-short int var17 /* : Bool */;
-short int var18 /* : Bool */;
-val* var_other20 /* var other: nullable Object */;
-short int var21 /* : Bool */;
-short int var22 /* : Bool */;
-val* var23 /* : IOError */;
-static val* varonce;
-val* var24 /* : String */;
-char* var25 /* : NativeString */;
-long var26 /* : Int */;
-val* var27 /* : FlatString */;
-short int var29 /* : Bool */;
-val* var30 /* : nullable NativeFile */;
-long var31 /* : Int */;
-long var33 /* : Int for extern */;
-void* var34 /* : NativeFile for extern */;
-long var_i /* var i: Int */;
-long var35 /* : Int */;
-short int var36 /* : Bool */;
-short int var38 /* : Bool */;
-short int var39 /* : Bool */;
-val* var40 /* : IOError */;
-static val* varonce41;
-val* var42 /* : String */;
-char* var43 /* : NativeString */;
-long var44 /* : Int */;
-val* var45 /* : FlatString */;
-val* var46 /* : Sys */;
-val* var48 /* : Sys */;
-long var49 /* : Int */;
-long var51 /* : Int */;
-val* var52 /* : String */;
-val* var53 /* : Array[Object] */;
-long var54 /* : Int */;
-val* var55 /* : NativeArray[Object] */;
-val* var56 /* : String */;
-short int var58 /* : Bool */;
-val* var59 /* : null */;
-var = self->attrs[COLOR_standard__file__FStream___file].val; /* _file on <self:OFStream> */
-var1 = NULL;
-if (var == NULL) {
-var2 = 1; /* is null */
-} else {
-var2 = 0; /* arg is null but recv is not */
-}
-if (0) {
-{ /* Inline kernel#Object#== (var,var1) on <var:nullable NativeFile> */
-var_other = var1;
-{
-{ /* Inline kernel#Object#is_same_instance (var,var_other) on <var:nullable NativeFile(NativeFile)> */
-var7 = var == var_other;
-var5 = var7;
-goto RET_LABEL6;
-RET_LABEL6:(void)0;
-}
-}
-var3 = var5;
-goto RET_LABEL4;
-RET_LABEL4:(void)0;
-}
-var2 = var3;
-}
-if (var2){
-goto RET_LABEL;
-} else {
-}
-var8 = self->attrs[COLOR_standard__file__FStream___file].val; /* _file on <self:OFStream> */
-if (var8 == NULL) {
-PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__file, 159);
-show_backtrace(1);
-} else {
-{ /* Inline kernel#Pointer#address_is_null (var8) on <var8:nullable NativeFile> */
-var12 = ((struct instance_standard__Pointer*)var8)->value; /* unboxing nullable NativeFile */
-var11 = address_is_null(var12);
-var9 = var11;
-goto RET_LABEL10;
-RET_LABEL10:(void)0;
-}
-}
-if (var9){
-{
-{ /* Inline stream#IOS#last_error (self) on <self:OFStream> */
-var15 = self->attrs[COLOR_standard__stream__IOS___last_error].val; /* _last_error on <self:OFStream> */
-var13 = var15;
-RET_LABEL14:(void)0;
-}
-}
-var16 = NULL;
-if (var13 == NULL) {
-var17 = 0; /* is null */
-} else {
-var17 = 1; /* arg is null and recv is not */
-}
-if (0) {
-{ /* Inline kernel#Object#!= (var13,var16) on <var13:nullable IOError> */
-var_other20 = var16;
-{
-var21 = ((short int (*)(val* self, val* p0))(var13->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var13, var_other20) /* == on <var13:nullable IOError(IOError)>*/;
-}
-var22 = !var21;
-var18 = var22;
-goto RET_LABEL19;
-RET_LABEL19:(void)0;
-}
-var17 = var18;
-}
-if (var17){
-goto RET_LABEL;
-} else {
-}
-var23 = NEW_standard__IOError(&type_standard__IOError);
-if (varonce) {
-var24 = varonce;
-} else {
-var25 = "Cannot close unopened write stream";
-var26 = 34;
-var27 = standard___standard__NativeString___to_s_with_length(var25, var26);
-var24 = var27;
-varonce = var24;
-}
-{
-((void (*)(val* self, val* p0))(var23->class->vft[COLOR_standard__error__Error__message_61d]))(var23, var24) /* message= on <var23:IOError>*/;
-}
-{
-((void (*)(val* self))(var23->class->vft[COLOR_standard__kernel__Object__init]))(var23) /* init on <var23:IOError>*/;
-}
-{
-{ /* Inline stream#IOS#last_error= (self,var23) on <self:OFStream> */
-self->attrs[COLOR_standard__stream__IOS___last_error].val = var23; /* _last_error on <self:OFStream> */
-RET_LABEL28:(void)0;
-}
-}
-var29 = 0;
-self->attrs[COLOR_standard__file__OFStream___is_writable].s = var29; /* _is_writable on <self:OFStream> */
-goto RET_LABEL;
-} else {
-}
-var30 = self->attrs[COLOR_standard__file__FStream___file].val; /* _file on <self:OFStream> */
-if (var30 == NULL) {
-PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__file, 165);
-show_backtrace(1);
-} else {
-{ /* Inline file#NativeFile#io_close (var30) on <var30:nullable NativeFile> */
-var34 = ((struct instance_standard__Pointer*)var30)->value; /* unboxing nullable NativeFile */
-var33 = file_NativeFile_NativeFile_io_close_0(var34);
-var31 = var33;
-goto RET_LABEL32;
-RET_LABEL32:(void)0;
-}
-}
-var_i = var31;
-var35 = 0;
-{
-{ /* Inline kernel#Int#!= (var_i,var35) on <var_i:Int> */
-var38 = var_i == var35;
-var39 = !var38;
-var36 = var39;
-goto RET_LABEL37;
-RET_LABEL37:(void)0;
-}
-}
-if (var36){
-var40 = NEW_standard__IOError(&type_standard__IOError);
-if (varonce41) {
-var42 = varonce41;
-} else {
-var43 = "Close failed due to error ";
-var44 = 26;
-var45 = standard___standard__NativeString___to_s_with_length(var43, var44);
-var42 = var45;
-varonce41 = var42;
-}
-{
-{ /* Inline kernel#Object#sys (self) on <self:OFStream> */
-var48 = glob_sys;
-var46 = var48;
-goto RET_LABEL47;
-RET_LABEL47:(void)0;
-}
-}
-{
-{ /* Inline kernel#Sys#errno (var46) on <var46:Sys> */
-struct nitni_instance* var_for_c_0;
-var_for_c_0 = nit_alloc(sizeof(struct nitni_instance));
-var_for_c_0->value = var46;
-var51 = kernel___Sys_errno___impl(var_for_c_0);
-var49 = var51;
-goto RET_LABEL50;
-RET_LABEL50:(void)0;
-}
-}
-{
-var52 = standard__string___Int___strerror(var49);
-}
-var53 = NEW_standard__Array(&type_standard__Array__standard__Object);
-{ /* var53 = array_instance Array[Object] */
-var54 = 2;
-var55 = NEW_standard__NativeArray(var54, &type_standard__NativeArray__standard__Object);
-((struct instance_standard__NativeArray*)var55)->values[0] = (val*) var42;
-((struct instance_standard__NativeArray*)var55)->values[1] = (val*) var52;