ref: a4eb9c0aca8ae4adb6c50133ba26bbd250ae934d
dir: /lib/std/syswrap-ss+linux.myr/
use sys use "types" use "errno" pkg std = const nanosleep : (nsecs : uint64 -> errno) $noret const exit : (status:int -> void) pkglocal const bgetcwd : (buf : byte[:] -> errno) ;; const nanosleep = {nsecs var req, rem var s, ns s = (nsecs / 1_000_000_000 : int64) ns = (nsecs % 1_000_000_000 : int64) req = [.sec = s, .nsec = ns] -> (sys.nanosleep(&req, &rem) : errno) } const exit = {status; sys.exit_group(status) } const bgetcwd = {buf; var err err = (sys.getcwd(buf) : errno) /* if we got a length back, it includes the nul byte. chop that off. */ if err > 0 -> err - 1 else -> err ;; }