diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig index d7d29e0df1a6863f8013de9e0be52290fab0a0fc..3319f08fc77350f3a20b8e1b7ff2e2ce4f2da4b5 100644 --- a/lib/std/os/linux.zig +++ b/lib/std/os/linux.zig @@ -1834,8 +1834,8 @@ pub fn setgroups(size: usize, list: [*]const gid_t) usize { } } -pub fn setsid() pid_t { - return @bitCast(@as(u32, @truncate(syscall0(.setsid)))); +pub fn setsid() usize { + return syscall0(.setsid); } pub fn getpid() pid_t { diff --git a/lib/std/posix.zig b/lib/std/posix.zig index e0fd68db2446b8031ac472bc877e411a06aed7f1..77a61b4bf4a0cec666df0190f15d3d681d1d676a 100644 --- a/lib/std/posix.zig +++ b/lib/std/posix.zig @@ -7000,7 +7000,7 @@ pub const SetSidError = error{ pub fn setsid() SetSidError!pid_t { const rc = system.setsid(); switch (errno(rc)) { - .SUCCESS => return rc, + .SUCCESS => return @intCast(rc), .PERM => return error.PermissionDenied, else => |err| return unexpectedErrno(err), }