if (!var1) {
fprintf(stderr, "Runtime error: %s", "Assert failed");
fprintf(stderr, " (%s:%d)\n", "lib/standard/exec.nit", 32);
-exit(1);
+show_backtrace(1);
}
RET_LABEL:;
}
if (!var1) {
fprintf(stderr, "Runtime error: %s", "Assert failed");
fprintf(stderr, " (%s:%d)\n", "lib/standard/exec.nit", 38);
-exit(1);
+show_backtrace(1);
}
var2 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:Process>*/;
var3 = exec__NativeProcess__status(var2);
var_pipeflags = p2;
var = NEW_string__Buffer(&type_string__Buffer);
((void (*)(val*))(var->class->vft[COLOR_string__Buffer__init]))(var) /* init on <var:Buffer>*/;
-CHECK_NEW_string__Buffer(var);
var_args = var;
var1 = 1;
var_l = var1;
if (var1 == NULL) {
fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @stream_in");
fprintf(stderr, " (%s:%d)\n", "lib/standard/exec.nit", 83);
-exit(1);
+show_backtrace(1);
}
var = var1;
RET_LABEL:;
var2 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IProcess>*/;
var3 = exec__NativeProcess__out_fd(var2);
((void (*)(val*, long))(var1->class->vft[COLOR_stream__FDIStream__init]))(var1, var3) /* init on <var1:FDIStream>*/;
-CHECK_NEW_stream__FDIStream(var1);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__IProcess__stream_in_61d]))(self, var1) /* stream_in= on <self:IProcess>*/;
RET_LABEL:;
}
var3 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IProcess>*/;
var4 = exec__NativeProcess__out_fd(var3);
((void (*)(val*, long))(var2->class->vft[COLOR_stream__FDIStream__init]))(var2, var4) /* init on <var2:FDIStream>*/;
-CHECK_NEW_stream__FDIStream(var2);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__IProcess__stream_in_61d]))(self, var2) /* stream_in= on <self:IProcess>*/;
RET_LABEL:;
}
var2 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IProcess>*/;
var3 = exec__NativeProcess__out_fd(var2);
((void (*)(val*, long))(var1->class->vft[COLOR_stream__FDIStream__init]))(var1, var3) /* init on <var1:FDIStream>*/;
-CHECK_NEW_stream__FDIStream(var1);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__IProcess__stream_in_61d]))(self, var1) /* stream_in= on <self:IProcess>*/;
RET_LABEL:;
}
if (var1 == NULL) {
fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @stream_out");
fprintf(stderr, " (%s:%d)\n", "lib/standard/exec.nit", 114);
-exit(1);
+show_backtrace(1);
}
var = var1;
RET_LABEL:;
var2 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:OProcess>*/;
var3 = exec__NativeProcess__in_fd(var2);
((void (*)(val*, long))(var1->class->vft[COLOR_stream__FDOStream__init]))(var1, var3) /* init on <var1:FDOStream>*/;
-CHECK_NEW_stream__FDOStream(var1);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__OProcess__stream_out_61d]))(self, var1) /* stream_out= on <self:OProcess>*/;
RET_LABEL:;
}
var3 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:OProcess>*/;
var4 = exec__NativeProcess__in_fd(var3);
((void (*)(val*, long))(var2->class->vft[COLOR_stream__FDOStream__init]))(var2, var4) /* init on <var2:FDOStream>*/;
-CHECK_NEW_stream__FDOStream(var2);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__OProcess__stream_out_61d]))(self, var2) /* stream_out= on <self:OProcess>*/;
RET_LABEL:;
}
var2 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:OProcess>*/;
var3 = exec__NativeProcess__in_fd(var2);
((void (*)(val*, long))(var1->class->vft[COLOR_stream__FDOStream__init]))(var1, var3) /* init on <var1:FDOStream>*/;
-CHECK_NEW_stream__FDOStream(var1);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__OProcess__stream_out_61d]))(self, var1) /* stream_out= on <self:OProcess>*/;
RET_LABEL:;
}
var2 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IOProcess>*/;
var3 = exec__NativeProcess__out_fd(var2);
((void (*)(val*, long))(var1->class->vft[COLOR_stream__FDIStream__init]))(var1, var3) /* init on <var1:FDIStream>*/;
-CHECK_NEW_stream__FDIStream(var1);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__IProcess__stream_in_61d]))(self, var1) /* stream_in= on <self:IOProcess>*/;
var4 = NEW_stream__FDOStream(&type_stream__FDOStream);
var5 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IOProcess>*/;
var6 = exec__NativeProcess__in_fd(var5);
((void (*)(val*, long))(var4->class->vft[COLOR_stream__FDOStream__init]))(var4, var6) /* init on <var4:FDOStream>*/;
-CHECK_NEW_stream__FDOStream(var4);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__OProcess__stream_out_61d]))(self, var4) /* stream_out= on <self:IOProcess>*/;
RET_LABEL:;
}
var3 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IOProcess>*/;
var4 = exec__NativeProcess__out_fd(var3);
((void (*)(val*, long))(var2->class->vft[COLOR_stream__FDIStream__init]))(var2, var4) /* init on <var2:FDIStream>*/;
-CHECK_NEW_stream__FDIStream(var2);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__IProcess__stream_in_61d]))(self, var2) /* stream_in= on <self:IOProcess>*/;
var5 = NEW_stream__FDOStream(&type_stream__FDOStream);
var6 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IOProcess>*/;
var7 = exec__NativeProcess__in_fd(var6);
((void (*)(val*, long))(var5->class->vft[COLOR_stream__FDOStream__init]))(var5, var7) /* init on <var5:FDOStream>*/;
-CHECK_NEW_stream__FDOStream(var5);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__OProcess__stream_out_61d]))(self, var5) /* stream_out= on <self:IOProcess>*/;
RET_LABEL:;
}
var2 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IOProcess>*/;
var3 = exec__NativeProcess__out_fd(var2);
((void (*)(val*, long))(var1->class->vft[COLOR_stream__FDIStream__init]))(var1, var3) /* init on <var1:FDIStream>*/;
-CHECK_NEW_stream__FDIStream(var1);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__IProcess__stream_in_61d]))(self, var1) /* stream_in= on <self:IOProcess>*/;
var4 = NEW_stream__FDOStream(&type_stream__FDOStream);
var5 = ((void* (*)(val*))(self->class->vft[COLOR_exec__Process__data]))(self) /* data on <self:IOProcess>*/;
var6 = exec__NativeProcess__in_fd(var5);
((void (*)(val*, long))(var4->class->vft[COLOR_stream__FDOStream__init]))(var4, var6) /* init on <var4:FDOStream>*/;
-CHECK_NEW_stream__FDOStream(var4);
((void (*)(val*, val*))(self->class->vft[COLOR_exec__OProcess__stream_out_61d]))(self, var4) /* stream_out= on <self:IOProcess>*/;
RET_LABEL:;
}
long var /* : Int */;
long var1 /* : Int */;
void* var2 /* : NativeProcess */;
-var2 = ((struct instance_exec__NativeProcess*)self)->value; /* autounbox from Object to NativeProcess */;
+var2 = ((struct instance_kernel__Pointer*)self)->value; /* autounbox from Object to NativeProcess */;
var1 = exec__NativeProcess__id(var2);
var = var1;
RET_LABEL:;
short int var /* : Bool */;
short int var1 /* : Bool */;
void* var2 /* : NativeProcess */;
-var2 = ((struct instance_exec__NativeProcess*)self)->value; /* autounbox from Object to NativeProcess */;
+var2 = ((struct instance_kernel__Pointer*)self)->value; /* autounbox from Object to NativeProcess */;
var1 = exec__NativeProcess__is_finished(var2);
var = var1;
RET_LABEL:;
long var /* : Int */;
long var1 /* : Int */;
void* var2 /* : NativeProcess */;
-var2 = ((struct instance_exec__NativeProcess*)self)->value; /* autounbox from Object to NativeProcess */;
+var2 = ((struct instance_kernel__Pointer*)self)->value; /* autounbox from Object to NativeProcess */;
var1 = exec__NativeProcess__status(var2);
var = var1;
RET_LABEL:;
/* method exec#NativeProcess#wait for (self: Object) */
void VIRTUAL_exec__NativeProcess__wait(val* self) {
void* var /* : NativeProcess */;
-var = ((struct instance_exec__NativeProcess*)self)->value; /* autounbox from Object to NativeProcess */;
+var = ((struct instance_kernel__Pointer*)self)->value; /* autounbox from Object to NativeProcess */;
exec__NativeProcess__wait(var);
RET_LABEL:;
}
long var /* : Int */;
long var1 /* : Int */;
void* var2 /* : NativeProcess */;
-var2 = ((struct instance_exec__NativeProcess*)self)->value; /* autounbox from Object to NativeProcess */;
+var2 = ((struct instance_kernel__Pointer*)self)->value; /* autounbox from Object to NativeProcess */;
var1 = exec__NativeProcess__in_fd(var2);
var = var1;
RET_LABEL:;
long var /* : Int */;
long var1 /* : Int */;
void* var2 /* : NativeProcess */;
-var2 = ((struct instance_exec__NativeProcess*)self)->value; /* autounbox from Object to NativeProcess */;
+var2 = ((struct instance_kernel__Pointer*)self)->value; /* autounbox from Object to NativeProcess */;
var1 = exec__NativeProcess__out_fd(var2);
var = var1;
RET_LABEL:;
long var /* : Int */;
long var1 /* : Int */;
void* var2 /* : NativeProcess */;
-var2 = ((struct instance_exec__NativeProcess*)self)->value; /* autounbox from Object to NativeProcess */;
+var2 = ((struct instance_kernel__Pointer*)self)->value; /* autounbox from Object to NativeProcess */;
var1 = exec__NativeProcess__err_fd(var2);
var = var1;
RET_LABEL:;