diff options
| author | LemonBoy <thatlemon@gmail.com> | 2020-03-08 16:04:02 +0100 |
|---|---|---|
| committer | LemonBoy <thatlemon@gmail.com> | 2020-03-23 18:47:40 +0100 |
| commit | 27344464edea0b6acf4dfc78d71700d67a3f3968 (patch) | |
| tree | cc6c77072ce3625dc4f1d0c7848e7d10f17149af /lib/std/os.zig | |
| parent | 2f21c8f5ba2e73c1a674b481fd2a8ce87726c14c (diff) | |
| download | zig-27344464edea0b6acf4dfc78d71700d67a3f3968.tar.gz zig-27344464edea0b6acf4dfc78d71700d67a3f3968.zip | |
std: Add missing C defines for NetBSD
Diffstat (limited to 'lib/std/os.zig')
| -rw-r--r-- | lib/std/os.zig | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/std/os.zig b/lib/std/os.zig index 2dec2c4c1d..f03aa96cf9 100644 --- a/lib/std/os.zig +++ b/lib/std/os.zig @@ -2542,6 +2542,17 @@ pub fn fstat(fd: fd_t) FStatError!Stat { } } + if (std.Target.current.os.tag == .netbsd) { + switch (errno(system.__fstat50(fd, &stat))) { + 0 => return stat, + EINVAL => unreachable, + EBADF => unreachable, // Always a race condition. + ENOMEM => return error.SystemResources, + EACCES => return error.AccessDenied, + else => |err| return unexpectedErrno(err), + } + } + switch (errno(system.fstat(fd, &stat))) { 0 => return stat, EINVAL => unreachable, @@ -3401,6 +3412,16 @@ pub fn clock_gettime(clk_id: i32, tp: *timespec) ClockGetTimeError!void { } return; } + + if (std.Target.current.os.tag == .netbsd) { + switch (errno(system.__clock_gettime50(clk_id, tp))) { + 0 => return, + EFAULT => unreachable, + EINVAL => return error.UnsupportedClock, + else => |err| return unexpectedErrno(err), + } + } + switch (errno(system.clock_gettime(clk_id, tp))) { 0 => return, EFAULT => unreachable, @@ -3423,6 +3444,15 @@ pub fn clock_getres(clk_id: i32, res: *timespec) ClockGetTimeError!void { return; } + if (std.Target.current.os.tag == .netbsd) { + switch (errno(system.__clock_getres50(clk_id, res))) { + 0 => return, + EFAULT => unreachable, + EINVAL => return error.UnsupportedClock, + else => |err| return unexpectedErrno(err), + } + } + switch (errno(system.clock_getres(clk_id, res))) { 0 => return, EFAULT => unreachable, |
