On Fri, May 16, 2014 at 1:03 AM, Svante Signell <svante.sign...@gmail.com> wrote: > > For that part of the patch without it the build on GNU/Hurd fails. On > the other hand SYS_FCNTL is not defined for e.g. GNU/Linux either. This > is used in gcc-4.9-4.9.0/src/libgo/go/net/fd_unix.go: > func dupCloseOnExec(fd int) (newfd int, err error) { > if atomic.LoadInt32(&tryDupCloexec) == 1 && syscall.F_DUPFD_CLOEXEC!=0 { > r0, _, e1 := syscall.Syscall(syscall.SYS_FCNTL, uintptr(fd), > syscall.F_DUPFD_CLOEXEC, 0) > > It is yet unknown how the build succeeds on Linux without the SYS_FCNTL > being defined? Maybe any the conditions above are not met.
On GNU/Linux SYS_FCNTL is defined by the generated file sysinfo.go, because SYS_fcntl is defined by <syscall.h>. Ian