From c66151a22619b4f3ce028076c67f495ff5f99d2c Mon Sep 17 00:00:00 2001 From: David Carlier Date: Sat, 22 Apr 2023 21:43:52 +0100 Subject: [PATCH] std.os: sysctl* wrappers, better warning at compile time --- lib/std/os.zig | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/lib/std/os.zig b/lib/std/os.zig index 13b0c62455..5b5189ea60 100644 --- a/lib/std/os.zig +++ b/lib/std/os.zig @@ -4722,11 +4722,8 @@ pub fn sysctl( newp: ?*anyopaque, newlen: usize, ) SysCtlError!void { - if (builtin.os.tag == .wasi) { - @panic("unsupported"); // TODO should be compile error, not panic - } - if (builtin.os.tag == .haiku) { - @panic("unsupported"); // TODO should be compile error, not panic + if (builtin.os.tag == .wasi or builtin.os.tag == .haiku) { + @compileError("unsupported OS"); } const name_len = math.cast(c_uint, name.len) orelse return error.NameTooLong; @@ -4747,11 +4744,8 @@ pub fn sysctlbynameZ( newp: ?*anyopaque, newlen: usize, ) SysCtlError!void { - if (builtin.os.tag == .wasi) { - @panic("unsupported"); // TODO should be compile error, not panic - } - if (builtin.os.tag == .haiku) { - @panic("unsupported"); // TODO should be compile error, not panic + if (builtin.os.tag == .wasi or builtin.os.tag == .haiku) { + @compileError("unsupported OS"); } switch (errno(system.sysctlbyname(name, oldp, oldlenp, newp, newlen))) {