This is of type cvalue
public fun wait(__stat_loc: kotlinx.cinterop.CValue<platform.posix.__WAIT_STATUS>): platform.posix.__pid_t /* = kotlin.Int */ { /* compiled code */ }
this is wait class
public final class wait public constructor(rawPtr: kotlinx.cinterop.NativePtr /* = kotlin.native.internal.NativePtr */) : kotlinx.cinterop.CStructVar {
public companion object : kotlinx.cinterop.CStructVar.Type {
}
public final val __wait_stopped: platform.posix.anonymousStruct21 /* compiled code */
public final val __wait_terminated: platform.posix.anonymousStruct20 /* compiled code */
public final var w_status: kotlin.Int /* compiled code */
}
this is linux C wait() function
#include <sys/wait.h>
pid_t wait(int *wstatus);
pid_t waitpid(pid_t pid, int *wstatus, int options);
int waitid(idtype_t idtype, id_t id, siginfo_t *infop, int options);
/* This is the glibc and POSIX interface; see
NOTES for information on the raw system call. */
I don’t know how kotlin native calls the wait () function and gets the child process status code.