diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig index d7d29e0df1..3319f08fc7 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 e0fd68db24..77a61b4bf4 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), }