authorgravatar for mdsteele@alum.mit.eduMatthew D. Steele <mdsteele@alum.mit.edu> 2018-08-03 11:45:23-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-08-03 11:45:23-04:00
logdcaaa241dfb7ce77b7070df8d6a939a9f0749e2c
tree64041d0e295206b5dd9653e8fdb3ad472bdab2a6
parentc2a08d7c516899b4c794bd6c3fc07ddb22d5876a

Fix a type error in std.os.linux.getpid() (#1326)

syscall0() returns usize, but we were trying to @bitCast to i32.

2 files changed, 5 insertions(+), 1 deletions(-)

std/os/linux/index.zig+1-1
...@@ -944,7 +944,7 @@ pub fn setgroups(size: usize, list: *const u32) usize {...@@ -944,7 +944,7 @@ pub fn setgroups(size: usize, list: *const u32) usize {
944}944}
945945
946pub fn getpid() i32 {946pub fn getpid() i32 {
947 return @bitCast(i32, u32(syscall0(SYS_getpid)));947 return @bitCast(i32, @truncate(u32, syscall0(SYS_getpid)));
948}948}
949949
950pub fn sigprocmask(flags: u32, noalias set: *const sigset_t, noalias oldset: ?*sigset_t) usize {950pub fn sigprocmask(flags: u32, noalias set: *const sigset_t, noalias oldset: ?*sigset_t) usize {
std/os/linux/test.zig+4
...@@ -3,6 +3,10 @@ const builtin = @import("builtin");...@@ -3,6 +3,10 @@ const builtin = @import("builtin");
3const linux = std.os.linux;3const linux = std.os.linux;
4const assert = std.debug.assert;4const assert = std.debug.assert;
55
6test "getpid" {
7 assert(linux.getpid() != 0);
8}
9
6test "timer" {10test "timer" {
7 const epoll_fd = linux.epoll_create();11 const epoll_fd = linux.epoll_create();
8 var err = linux.getErrno(epoll_fd);12 var err = linux.getErrno(epoll_fd);