diff --git a/lib/std/Thread.zig b/lib/std/Thread.zig index c12679233660..adb822173e43 100644 --- a/lib/std/Thread.zig +++ b/lib/std/Thread.zig @@ -75,7 +75,7 @@ pub fn setName(self: Thread, name: []const u8) SetNameError!void { } } else { const err = std.c.pthread_setname_np(self.getHandle(), name_with_terminator.ptr); - switch (err) { + switch (@as(posix.E, @enumFromInt(err))) { .SUCCESS => return, .RANGE => unreachable, else => |e| return posix.unexpectedErrno(e), @@ -119,14 +119,14 @@ pub fn setName(self: Thread, name: []const u8) SetNameError!void { if (self.getHandle() != std.c.pthread_self()) return error.Unsupported; const err = std.c.pthread_setname_np(name_with_terminator.ptr); - switch (err) { + switch (@as(posix.E, @enumFromInt(err))) { .SUCCESS => return, else => |e| return posix.unexpectedErrno(e), } }, .netbsd, .solaris, .illumos => if (use_pthreads) { const err = std.c.pthread_setname_np(self.getHandle(), name_with_terminator.ptr, null); - switch (err) { + switch (@as(posix.E, @enumFromInt(err))) { .SUCCESS => return, .INVAL => unreachable, .SRCH => unreachable, @@ -144,7 +144,7 @@ pub fn setName(self: Thread, name: []const u8) SetNameError!void { }, .dragonfly => if (use_pthreads) { const err = std.c.pthread_setname_np(self.getHandle(), name_with_terminator.ptr); - switch (err) { + switch (@as(posix.E, @enumFromInt(err))) { .SUCCESS => return, .INVAL => unreachable, .FAULT => unreachable, @@ -180,7 +180,7 @@ pub fn getName(self: Thread, buffer_ptr: *[max_name_len:0]u8) GetNameError!?[]co } } else { const err = std.c.pthread_getname_np(self.getHandle(), buffer.ptr, max_name_len + 1); - switch (err) { + switch (@as(posix.E, @enumFromInt(err))) { .SUCCESS => return std.mem.sliceTo(buffer, 0), .RANGE => unreachable, else => |e| return posix.unexpectedErrno(e), @@ -219,7 +219,7 @@ pub fn getName(self: Thread, buffer_ptr: *[max_name_len:0]u8) GetNameError!?[]co }, .macos, .ios, .watchos, .tvos, .visionos => if (use_pthreads) { const err = std.c.pthread_getname_np(self.getHandle(), buffer.ptr, max_name_len + 1); - switch (err) { + switch (@as(posix.E, @enumFromInt(err))) { .SUCCESS => return std.mem.sliceTo(buffer, 0), .SRCH => unreachable, else => |e| return posix.unexpectedErrno(e), @@ -227,7 +227,7 @@ pub fn getName(self: Thread, buffer_ptr: *[max_name_len:0]u8) GetNameError!?[]co }, .netbsd, .solaris, .illumos => if (use_pthreads) { const err = std.c.pthread_getname_np(self.getHandle(), buffer.ptr, max_name_len + 1); - switch (err) { + switch (@as(posix.E, @enumFromInt(err))) { .SUCCESS => return std.mem.sliceTo(buffer, 0), .INVAL => unreachable, .SRCH => unreachable, @@ -243,7 +243,7 @@ pub fn getName(self: Thread, buffer_ptr: *[max_name_len:0]u8) GetNameError!?[]co }, .dragonfly => if (use_pthreads) { const err = std.c.pthread_getname_np(self.getHandle(), buffer.ptr, max_name_len + 1); - switch (err) { + switch (@as(posix.E, @enumFromInt(err))) { .SUCCESS => return std.mem.sliceTo(buffer, 0), .INVAL => unreachable, .FAULT => unreachable, diff --git a/lib/std/c/darwin.zig b/lib/std/c/darwin.zig index dfc0fd56ea00..ac2af38c1c02 100644 --- a/lib/std/c/darwin.zig +++ b/lib/std/c/darwin.zig @@ -851,8 +851,8 @@ pub const pthread_attr_t = extern struct { }; pub extern "c" fn pthread_threadid_np(thread: ?std.c.pthread_t, thread_id: *u64) c_int; -pub extern "c" fn pthread_setname_np(name: [*:0]const u8) E; -pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) E; +pub extern "c" fn pthread_setname_np(name: [*:0]const u8) c_int; +pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) c_int; pub extern "c" fn pthread_attr_set_qos_class_np(attr: *pthread_attr_t, qos_class: qos_class_t, relative_priority: c_int) c_int; pub extern "c" fn pthread_attr_get_qos_class_np(attr: *pthread_attr_t, qos_class: *qos_class_t, relative_priority: *c_int) c_int; pub extern "c" fn pthread_set_qos_class_self_np(qos_class: qos_class_t, relative_priority: c_int) c_int; diff --git a/lib/std/c/dragonfly.zig b/lib/std/c/dragonfly.zig index cc72aaa072eb..8903b6abd268 100644 --- a/lib/std/c/dragonfly.zig +++ b/lib/std/c/dragonfly.zig @@ -29,8 +29,8 @@ pub const pthread_attr_t = extern struct { // copied from freebsd pub const sem_t = ?*opaque {}; -pub extern "c" fn pthread_setname_np(thread: std.c.pthread_t, name: [*:0]const u8) E; -pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) E; +pub extern "c" fn pthread_setname_np(thread: std.c.pthread_t, name: [*:0]const u8) c_int; +pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) c_int; pub extern "c" fn umtx_sleep(ptr: *const volatile c_int, value: c_int, timeout: c_int) c_int; pub extern "c" fn umtx_wakeup(ptr: *const volatile c_int, count: c_int) c_int; diff --git a/lib/std/c/emscripten.zig b/lib/std/c/emscripten.zig index 501fcb4386b6..0893289b14a7 100644 --- a/lib/std/c/emscripten.zig +++ b/lib/std/c/emscripten.zig @@ -171,7 +171,7 @@ pub const RTLD = struct { pub const LOCAL = 0; }; -pub const dirent = struct { +pub const dirent = extern struct { ino: c_uint, off: c_uint, reclen: c_ushort, diff --git a/lib/std/c/linux.zig b/lib/std/c/linux.zig index 1a3c63451502..6c3275274c64 100644 --- a/lib/std/c/linux.zig +++ b/lib/std/c/linux.zig @@ -318,8 +318,8 @@ pub const sem_t = extern struct { const __SIZEOF_SEM_T = 4 * @sizeOf(usize); -pub extern "c" fn pthread_setname_np(thread: std.c.pthread_t, name: [*:0]const u8) E; -pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) E; +pub extern "c" fn pthread_setname_np(thread: std.c.pthread_t, name: [*:0]const u8) c_int; +pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) c_int; pub const RTLD = struct { pub const LAZY = 1; @@ -330,14 +330,14 @@ pub const RTLD = struct { pub const LOCAL = 0; }; -pub const dirent = struct { +pub const dirent = extern struct { ino: c_uint, off: c_uint, reclen: c_ushort, type: u8, name: [256]u8, }; -pub const dirent64 = struct { +pub const dirent64 = extern struct { ino: c_ulong, off: c_ulong, reclen: c_ushort, diff --git a/lib/std/c/netbsd.zig b/lib/std/c/netbsd.zig index 3ec6de59b285..d7dfe4abe496 100644 --- a/lib/std/c/netbsd.zig +++ b/lib/std/c/netbsd.zig @@ -51,8 +51,8 @@ pub const pthread_attr_t = extern struct { pub const sem_t = ?*opaque {}; -pub extern "c" fn pthread_setname_np(thread: std.c.pthread_t, name: [*:0]const u8, arg: ?*anyopaque) E; -pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) E; +pub extern "c" fn pthread_setname_np(thread: std.c.pthread_t, name: [*:0]const u8, arg: ?*anyopaque) c_int; +pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) c_int; pub const blkcnt_t = i64; pub const blksize_t = i32; diff --git a/lib/std/c/solaris.zig b/lib/std/c/solaris.zig index 4f08c32b0374..215dc417440d 100644 --- a/lib/std/c/solaris.zig +++ b/lib/std/c/solaris.zig @@ -34,8 +34,8 @@ pub const sem_t = extern struct { __pad2: [2]u64 = [_]u64{0} ** 2, }; -pub extern "c" fn pthread_setname_np(thread: std.c.pthread_t, name: [*:0]const u8, arg: ?*anyopaque) E; -pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) E; +pub extern "c" fn pthread_setname_np(thread: std.c.pthread_t, name: [*:0]const u8, arg: ?*anyopaque) c_int; +pub extern "c" fn pthread_getname_np(thread: std.c.pthread_t, name: [*:0]u8, len: usize) c_int; pub const blkcnt_t = i64; pub const blksize_t = i32;