diff options
author | ian <ian@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-09-05 15:24:36 +0000 |
---|---|---|
committer | ian <ian@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-09-05 15:24:36 +0000 |
commit | 1308b2f5e3a983a77614b185b4b576dee8c7c50d (patch) | |
tree | 8f3ee162354eef2377a071a0cab0836a7e80b4c7 /libgo | |
parent | 93ee8dfb44262805ace7599c2fa60423810f0567 (diff) | |
download | gcc-1308b2f5e3a983a77614b185b4b576dee8c7c50d.tar.gz |
runtime: Use the clone system call on GNU/Linux.
Without this we weren't supporting the standard Cloneflags
field of SysProcAttr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214972 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgo')
-rw-r--r-- | libgo/go/syscall/exec_linux.go | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libgo/go/syscall/exec_linux.go b/libgo/go/syscall/exec_linux.go index 5d14ec385a4..6a92163206b 100644 --- a/libgo/go/syscall/exec_linux.go +++ b/libgo/go/syscall/exec_linux.go @@ -43,7 +43,7 @@ func forkAndExecInChild(argv0 *byte, argv, envv []*byte, chroot, dir *byte, attr // Declare all variables at top in case any // declarations require heap allocation (e.g., err1). var ( - r1 Pid_t + r1 uintptr err1 Errno nextfd int i int @@ -65,7 +65,7 @@ func forkAndExecInChild(argv0 *byte, argv, envv []*byte, chroot, dir *byte, attr // About to call fork. // No more allocation or calls of non-assembly functions. runtime_BeforeFork() - r1, err1 = raw_fork() + r1, _, err1 = RawSyscall6(SYS_CLONE, uintptr(SIGCHLD)|sys.Cloneflags, 0, 0, 0, 0, 0) if err1 != 0 { runtime_AfterFork() return 0, err1 |