golang / go

The Go programming language
https://go.dev
BSD 3-Clause "New" or "Revised" License
123k stars 17.53k forks source link

x/sys/unix: syscall support for ppc (gccgo) #37443

Closed rstrand closed 3 years ago

rstrand commented 4 years ago

What version of Go are you using (go version)?

$ go version
go version go1.12.2 gccgo (GCC) 9.2.0 linux/amd64

Cross compiling to powerpc
$ powerpc-e500mc-linux-gnu-gccgo --version
powerpc-e500mc-linux-gnu-gccgo (crosstool-NG 1.24.0.71-4fa0ba1) 9.2.0

Does this issue reproduce with the latest release?

Yes

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GOARCH="ppc"
GOBIN=""
GOCACHE="/home/richard/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/richard/go"
GOPROXY=""
GORACE=""
GOROOT="/opt/gccgo"
GOTMPDIR=""
GOTOOLDIR="/opt/gccgo/libexec/gcc/x86_64-pc-linux-gnu/9.2.0"
GCCGO="/home/richard/x-tools/powerpc-e500mc-linux-gnu/bin/powerpc-e500mc-linux-gnu-gccgo"
CC="powerpc-e500mc-linux-gnu-gcc"
CXX="powerpc-e500mc-linux-gnu-g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build627835558=/tmp/go-build -gno-record-gcc-switches -funwind-tables"

What did you do?

hello.go

package main

import _ "golang.org/x/sys/unix"

func main() {
}

$ go build -v -o hello -compiler gccgo hello.go

What did you expect to see?

The package compiled correctly.

What did you see instead?

Go build output
golang.org/x/sys/unix
# golang.org/x/sys/unix
../../../golang.org/x/sys/unix/affinity_linux.go:14:20: error: reference to undefined name '_CPU_SETSIZE'
   14 | const cpuSetSize = _CPU_SETSIZE / _NCPUBITS
      |                    ^
../../../golang.org/x/sys/unix/affinity_linux.go:14:35: error: reference to undefined name '_NCPUBITS'
   14 | const cpuSetSize = _CPU_SETSIZE / _NCPUBITS
      |                                   ^
../../../golang.org/x/sys/unix/affinity_linux.go:14:33: error: division by zero
   14 | const cpuSetSize = _CPU_SETSIZE / _NCPUBITS
      |                                 ^
../../../golang.org/x/sys/unix/affinity_linux.go:17:25: error: use of undefined type 'cpuMask'
   17 | type CPUSet [cpuSetSize]cpuMask
      |                         ^
../../../golang.org/x/sys/unix/affinity_linux.go:30:23: error: reference to undefined name 'SYS_SCHED_GETAFFINITY'
   30 |  return schedAffinity(SYS_SCHED_GETAFFINITY, pid, set)
      |                       ^
../../../golang.org/x/sys/unix/affinity_linux.go:36:23: error: reference to undefined name 'SYS_SCHED_SETAFFINITY'
   36 |  return schedAffinity(SYS_SCHED_SETAFFINITY, pid, set)
      |                       ^
../../../golang.org/x/sys/unix/affinity_linux.go:47:15: error: reference to undefined name '_NCPUBITS'
   47 |  return cpu / _NCPUBITS
      |               ^
../../../golang.org/x/sys/unix/affinity_linux.go:51:9: error: reference to undefined name 'cpuMask'
   51 |  return cpuMask(1 << (uint(cpu) % _NCPUBITS))
      |         ^
../../../golang.org/x/sys/unix/affinity_linux.go:51:35: error: reference to undefined name '_NCPUBITS'
   51 |  return cpuMask(1 << (uint(cpu) % _NCPUBITS))
      |                                   ^
../../../golang.org/x/sys/unix/affinity_linux.go:17:25: error: use of undefined type 'cpuMask'
   17 | type CPUSet [cpuSetSize]cpuMask
      |                         ^
../../../golang.org/x/sys/unix/dirent.go:16:5: error: reference to undefined name 'isBigEndian'
   16 |  if isBigEndian {
      |     ^
../../../golang.org/x/sys/unix/dirent.go:81:41: error: use of undefined type 'Dirent'
   81 |   const namoff = uint64(unsafe.Offsetof(Dirent{}.Name))
      |                                         ^
../../../golang.org/x/sys/unix/fcntl.go:13:30: error: reference to undefined name 'SYS_FCNTL'
   13 | var fcntl64Syscall uintptr = SYS_FCNTL
      |                              ^
../../../golang.org/x/sys/unix/fdset.go:10:12: error: use of undefined type 'FdSet'
   10 | func (fds *FdSet) Set(fd int) {
      |            ^
../../../golang.org/x/sys/unix/fdset.go:11:5: error: reference to field 'Bits' in object which has no fields or methods
   11 |  fds.Bits[fd/NFDBITS] |= (1 << (uintptr(fd) % NFDBITS))
      |     ^
../../../golang.org/x/sys/unix/fdset.go:11:14: error: reference to undefined name 'NFDBITS'
   11 |  fds.Bits[fd/NFDBITS] |= (1 << (uintptr(fd) % NFDBITS))
      |              ^
../../../golang.org/x/sys/unix/fdset.go:11:47: error: reference to undefined name 'NFDBITS'
   11 |  fds.Bits[fd/NFDBITS] |= (1 << (uintptr(fd) % NFDBITS))
      |                                               ^
../../../golang.org/x/sys/unix/fdset.go:16:5: error: reference to field 'Bits' in object which has no fields or methods
   16 |  fds.Bits[fd/NFDBITS] &^= (1 << (uintptr(fd) % NFDBITS))
      |     ^
../../../golang.org/x/sys/unix/fdset.go:16:14: error: reference to undefined name 'NFDBITS'
   16 |  fds.Bits[fd/NFDBITS] &^= (1 << (uintptr(fd) % NFDBITS))
      |              ^
../../../golang.org/x/sys/unix/fdset.go:16:48: error: reference to undefined name 'NFDBITS'
   16 |  fds.Bits[fd/NFDBITS] &^= (1 << (uintptr(fd) % NFDBITS))
      |                                                ^
../../../golang.org/x/sys/unix/fdset.go:21:12: error: reference to field 'Bits' in object which has no fields or methods
   21 |  return fds.Bits[fd/NFDBITS]&(1<<(uintptr(fd)%NFDBITS)) != 0
      |            ^
../../../golang.org/x/sys/unix/fdset.go:21:21: error: reference to undefined name 'NFDBITS'
   21 |  return fds.Bits[fd/NFDBITS]&(1<<(uintptr(fd)%NFDBITS)) != 0
      |                     ^
../../../golang.org/x/sys/unix/fdset.go:21:47: error: reference to undefined name 'NFDBITS'
   21 |  return fds.Bits[fd/NFDBITS]&(1<<(uintptr(fd)%NFDBITS)) != 0
      |                                               ^
../../../golang.org/x/sys/unix/fdset.go:21:32: error: invalid context-determined non-integer type for left operand of shift
   21 |  return fds.Bits[fd/NFDBITS]&(1<<(uintptr(fd)%NFDBITS)) != 0
      |                                ^
../../../golang.org/x/sys/unix/fdset.go:26:20: error: reference to field 'Bits' in object which has no fields or methods
   26 |  for i := range fds.Bits {
      |                    ^
../../../golang.org/x/sys/unix/fdset.go:26:20: error: reference to field 'Bits' in object which has no fields or methods
../../../golang.org/x/sys/unix/fdset.go:27:6: error: reference to field 'Bits' in object which has no fields or methods
   27 |   fds.Bits[i] = 0
      |      ^
../../../golang.org/x/sys/unix/fdset.go:26:2: error: range clause must have array, slice, string, map, or channel type
   26 |  for i := range fds.Bits {
      |  ^
../../../golang.org/x/sys/unix/ioctl.go:20:9: error: reference to undefined name 'ioctl'
   20 |  return ioctl(fd, req, uintptr(value))
      |         ^
../../../golang.org/x/sys/unix/ioctl.go:29:9: error: reference to undefined name 'ioctl'
   29 |  err := ioctl(fd, req, uintptr(unsafe.Pointer(value)))
      |         ^
../../../golang.org/x/sys/unix/ioctl.go:39:9: error: reference to undefined name 'ioctl'
   39 |  err := ioctl(fd, req, uintptr(unsafe.Pointer(value)))
      |         ^
../../../golang.org/x/sys/unix/ioctl.go:51:9: error: reference to undefined name 'ioctl'
   51 |  err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
      |         ^
../../../golang.org/x/sys/unix/ioctl.go:57:9: error: reference to undefined name 'ioctl'
   57 |  err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
      |         ^
../../../golang.org/x/sys/unix/ioctl.go:63:9: error: reference to undefined name 'ioctl'
   63 |  err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
      |         ^
../../../golang.org/x/sys/unix/readdirent_getdents.go:11:9: error: reference to undefined name 'Getdents'
   11 |  return Getdents(fd, buf)
      |         ^
../../../golang.org/x/sys/unix/readdirent_getdents.go:11:2: error: not enough arguments to return
   11 |  return Getdents(fd, buf)
      |  ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:15:30: error: reference to undefined name 'SizeofUcred'
   15 |  b := make([]byte, CmsgSpace(SizeofUcred))
      |                              ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:16:9: error: reference to undefined type 'Cmsghdr'
   16 |  h := (*Cmsghdr)(unsafe.Pointer(&b[0]))
      |         ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:16:8: error: expected pointer
   16 |  h := (*Cmsghdr)(unsafe.Pointer(&b[0]))
      |        ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:17:12: error: reference to undefined name 'SOL_SOCKET'
   17 |  h.Level = SOL_SOCKET
      |            ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:18:11: error: reference to undefined name 'SCM_CREDENTIALS'
   18 |  h.Type = SCM_CREDENTIALS
      |           ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:19:19: error: reference to undefined name 'SizeofUcred'
   19 |  h.SetLen(CmsgLen(SizeofUcred))
      |                   ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:20:5: error: reference to undefined name 'Ucred'
   20 |  *(*Ucred)(h.data(0)) = *ucred
      |     ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:20:4: error: expected pointer
   20 |  *(*Ucred)(h.data(0)) = *ucred
      |    ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:20:2: error: expected pointer
   20 |  *(*Ucred)(h.data(0)) = *ucred
      |  ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:16:9: error: use of undefined type 'Cmsghdr'
   16 |  h := (*Cmsghdr)(unsafe.Pointer(&b[0]))
      |         ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:28:13: error: reference to field 'Level' in object which has no fields or methods
   28 |  if m.Header.Level != SOL_SOCKET {
      |             ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:28:23: error: reference to undefined name 'SOL_SOCKET'
   28 |  if m.Header.Level != SOL_SOCKET {
      |                       ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:29:15: error: reference to undefined name 'EINVAL'
   29 |   return nil, EINVAL
      |               ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:31:13: error: reference to field 'Type' in object which has no fields or methods
   31 |  if m.Header.Type != SCM_CREDENTIALS {
      |             ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:31:22: error: reference to undefined name 'SCM_CREDENTIALS'
   31 |  if m.Header.Type != SCM_CREDENTIALS {
      |                      ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:32:15: error: reference to undefined name 'EINVAL'
   32 |   return nil, EINVAL
      |               ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:34:14: error: reference to undefined name 'Ucred'
   34 |  ucred := *(*Ucred)(unsafe.Pointer(&m.Data[0]))
      |              ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:34:13: error: expected pointer
   34 |  ucred := *(*Ucred)(unsafe.Pointer(&m.Data[0]))
      |             ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:34:11: error: expected pointer
   34 |  ucred := *(*Ucred)(unsafe.Pointer(&m.Data[0]))
      |           ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:18:21: error: reference to undefined name 'SizeofCmsghdr'
   18 |  return cmsgAlignOf(SizeofCmsghdr) + datalen
      |                     ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:24:21: error: reference to undefined name 'SizeofCmsghdr'
   24 |  return cmsgAlignOf(SizeofCmsghdr) + cmsgAlignOf(datalen)
      |                     ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:28:73: error: reference to undefined name 'SizeofCmsghdr'
   28 |  return unsafe.Pointer(uintptr(unsafe.Pointer(h)) + uintptr(cmsgAlignOf(SizeofCmsghdr)) + offset)
      |                                                                         ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:49:25: error: reference to field 'Len' in object which has no fields or methods
   49 |   i += cmsgAlignOf(int(h.Len))
      |                         ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:56:6: error: reference to field 'Len' in object which has no fields or methods
   56 |  if h.Len < SizeofCmsghdr || uint64(h.Len) > uint64(len(b)) {
      |      ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:56:13: error: reference to undefined name 'SizeofCmsghdr'
   56 |  if h.Len < SizeofCmsghdr || uint64(h.Len) > uint64(len(b)) {
      |             ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:56:38: error: reference to field 'Len' in object which has no fields or methods
   56 |  if h.Len < SizeofCmsghdr || uint64(h.Len) > uint64(len(b)) {
      |                                      ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:57:20: error: reference to undefined name 'EINVAL'
   57 |   return nil, nil, EINVAL
      |                    ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:59:26: error: reference to undefined name 'SizeofCmsghdr'
   59 |  return h, b[cmsgAlignOf(SizeofCmsghdr):h.Len], nil
      |                          ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:59:42: error: reference to field 'Len' in object which has no fields or methods
   59 |  return h, b[cmsgAlignOf(SizeofCmsghdr):h.Len], nil
      |                                          ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:68:3: error: reference to field 'Level' in object which has no fields or methods
   68 |  h.Level = SOL_SOCKET
      |   ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:68:12: error: reference to undefined name 'SOL_SOCKET'
   68 |  h.Level = SOL_SOCKET
      |            ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:69:3: error: reference to field 'Type' in object which has no fields or methods
   69 |  h.Type = SCM_RIGHTS
      |   ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:69:11: error: reference to undefined name 'SCM_RIGHTS'
   69 |  h.Type = SCM_RIGHTS
      |           ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:70:3: error: reference to field 'SetLen' in object which has no fields or methods
   70 |  h.SetLen(CmsgLen(datalen))
      |   ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:72:14: error: reference to field 'data' in object which has no fields or methods
   72 |   *(*int32)(h.data(4 * uintptr(i))) = int32(fd)
      |              ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:72:3: error: expected pointer
   72 |   *(*int32)(h.data(4 * uintptr(i))) = int32(fd)
      |   ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:80:13: error: reference to field 'Level' in object which has no fields or methods
   80 |  if m.Header.Level != SOL_SOCKET {
      |             ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:80:23: error: reference to undefined name 'SOL_SOCKET'
   80 |  if m.Header.Level != SOL_SOCKET {
      |                       ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:81:15: error: reference to undefined name 'EINVAL'
   81 |   return nil, EINVAL
      |               ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:83:13: error: reference to field 'Type' in object which has no fields or methods
   83 |  if m.Header.Type != SCM_RIGHTS {
      |             ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:83:22: error: reference to undefined name 'SCM_RIGHTS'
   83 |  if m.Header.Type != SCM_RIGHTS {
      |                      ^
../../../golang.org/x/sys/unix/sockcmsg_unix.go:84:15: error: reference to undefined name 'EINVAL'
   84 |   return nil, EINVAL
      |               ^
../../../golang.org/x/sys/unix/sockcmsg_unix_other.go:15:12: error: reference to undefined name 'SizeofPtr'
   15 |  salign := SizeofPtr
      |            ^
../../../golang.org/x/sys/unix/sockcmsg_unix_other.go:27:6: error: reference to undefined name 'SizeofPtr'
   27 |   if SizeofPtr == 8 {
      |      ^
../../../golang.org/x/sys/unix/syscall.go:34:15: error: reference to undefined name 'EINVAL'
   34 |   return nil, EINVAL
      |               ^
../../../golang.org/x/sys/unix/syscall_linux.go:26:19: error: reference to undefined name 'AT_FDCWD'
   26 |  return Faccessat(AT_FDCWD, path, mode, 0)
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:30:18: error: reference to undefined name 'AT_FDCWD'
   30 |  return Fchmodat(AT_FDCWD, path, mode, 0)
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:34:9: error: reference to undefined name 'Fchownat'
   34 |  return Fchownat(AT_FDCWD, path, uid, gid, 0)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:34:18: error: reference to undefined name 'AT_FDCWD'
   34 |  return Fchownat(AT_FDCWD, path, uid, gid, 0)
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:38:20: error: reference to undefined name 'O_CREAT'
   38 |  return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:38:28: error: reference to undefined name 'O_WRONLY'
   38 |  return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode)
      |                            ^
../../../golang.org/x/sys/unix/syscall_linux.go:38:37: error: reference to undefined name 'O_TRUNC'
   38 |  return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode)
      |                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:46:10: error: reference to undefined name 'fanotifyMark'
   46 |   return fanotifyMark(fd, flags, mask, dirFd, nil)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:52:9: error: reference to undefined name 'fanotifyMark'
   52 |  return fanotifyMark(fd, flags, mask, dirFd, p)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:61:12: error: reference to undefined name 'AT_SYMLINK_NOFOLLOW'
   61 |  if flags&^AT_SYMLINK_NOFOLLOW != 0 {
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:62:10: error: reference to undefined name 'EINVAL'
   62 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:63:18: error: reference to undefined name 'AT_SYMLINK_NOFOLLOW'
   63 |  } else if flags&AT_SYMLINK_NOFOLLOW != 0 {
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:64:10: error: reference to undefined name 'EOPNOTSUPP'
   64 |   return EOPNOTSUPP
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:66:9: error: reference to undefined name 'fchmodat'
   66 |  return fchmodat(dirfd, path, mode)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:78:25: error: reference to undefined name 'SYS_IOCTL'
   78 |  ret, _, err := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), 0)
      |                         ^
../../../golang.org/x/sys/unix/syscall_linux.go:91:9: error: reference to undefined name 'ioctl'
   91 |  return ioctl(fd, req, uintptr(unsafe.Pointer(&v)))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:95:9: error: reference to undefined name 'ioctl'
   95 |  err := ioctl(fd, RTC_SET_TIME, uintptr(unsafe.Pointer(value)))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:95:19: error: reference to undefined name 'RTC_SET_TIME'
   95 |  err := ioctl(fd, RTC_SET_TIME, uintptr(unsafe.Pointer(value)))
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:102:9: error: reference to undefined name 'ioctl'
  102 |  err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:108:9: error: reference to undefined name 'ioctl'
  108 |  err := ioctl(fd, RTC_RD_TIME, uintptr(unsafe.Pointer(&value)))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:108:19: error: reference to undefined name 'RTC_RD_TIME'
  108 |  err := ioctl(fd, RTC_RD_TIME, uintptr(unsafe.Pointer(&value)))
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:115:9: error: reference to undefined name 'Linkat'
  115 |  return Linkat(AT_FDCWD, oldpath, AT_FDCWD, newpath, 0)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:115:16: error: reference to undefined name 'AT_FDCWD'
  115 |  return Linkat(AT_FDCWD, oldpath, AT_FDCWD, newpath, 0)
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:115:35: error: reference to undefined name 'AT_FDCWD'
  115 |  return Linkat(AT_FDCWD, oldpath, AT_FDCWD, newpath, 0)
      |                                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:119:9: error: reference to undefined name 'Mkdirat'
  119 |  return Mkdirat(AT_FDCWD, path, mode)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:119:17: error: reference to undefined name 'AT_FDCWD'
  119 |  return Mkdirat(AT_FDCWD, path, mode)
      |                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:123:9: error: reference to undefined name 'Mknodat'
  123 |  return Mknodat(AT_FDCWD, path, mode, dev)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:123:17: error: reference to undefined name 'AT_FDCWD'
  123 |  return Mknodat(AT_FDCWD, path, mode, dev)
      |                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:127:9: error: reference to undefined name 'openat'
  127 |  return openat(AT_FDCWD, path, mode|O_LARGEFILE, perm)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:127:16: error: reference to undefined name 'AT_FDCWD'
  127 |  return openat(AT_FDCWD, path, mode|O_LARGEFILE, perm)
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:127:37: error: reference to undefined name 'O_LARGEFILE'
  127 |  return openat(AT_FDCWD, path, mode|O_LARGEFILE, perm)
      |                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:127:2: error: not enough arguments to return
  127 |  return openat(AT_FDCWD, path, mode|O_LARGEFILE, perm)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:133:9: error: reference to undefined name 'openat'
  133 |  return openat(dirfd, path, flags|O_LARGEFILE, mode)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:133:35: error: reference to undefined name 'O_LARGEFILE'
  133 |  return openat(dirfd, path, flags|O_LARGEFILE, mode)
      |                                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:133:2: error: not enough arguments to return
  133 |  return openat(dirfd, path, flags|O_LARGEFILE, mode)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:140:10: error: reference to undefined name 'ppoll'
  140 |   return ppoll(nil, 0, timeout, sigmask)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:140:3: error: not enough arguments to return
  140 |   return ppoll(nil, 0, timeout, sigmask)
      |   ^
../../../golang.org/x/sys/unix/syscall_linux.go:142:9: error: reference to undefined name 'ppoll'
  142 |  return ppoll(&fds[0], len(fds), timeout, sigmask)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:142:2: error: not enough arguments to return
  142 |  return ppoll(&fds[0], len(fds), timeout, sigmask)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:148:9: error: reference to undefined name 'Readlinkat'
  148 |  return Readlinkat(AT_FDCWD, path, buf)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:148:20: error: reference to undefined name 'AT_FDCWD'
  148 |  return Readlinkat(AT_FDCWD, path, buf)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:148:2: error: not enough arguments to return
  148 |  return Readlinkat(AT_FDCWD, path, buf)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:152:9: error: reference to undefined name 'Renameat'
  152 |  return Renameat(AT_FDCWD, oldpath, AT_FDCWD, newpath)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:152:18: error: reference to undefined name 'AT_FDCWD'
  152 |  return Renameat(AT_FDCWD, oldpath, AT_FDCWD, newpath)
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:152:37: error: reference to undefined name 'AT_FDCWD'
  152 |  return Renameat(AT_FDCWD, oldpath, AT_FDCWD, newpath)
      |                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:156:9: error: reference to undefined name 'Unlinkat'
  156 |  return Unlinkat(AT_FDCWD, path, AT_REMOVEDIR)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:156:18: error: reference to undefined name 'AT_FDCWD'
  156 |  return Unlinkat(AT_FDCWD, path, AT_REMOVEDIR)
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:156:34: error: reference to undefined name 'AT_REMOVEDIR'
  156 |  return Unlinkat(AT_FDCWD, path, AT_REMOVEDIR)
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:162:9: error: reference to undefined name 'Symlinkat'
  162 |  return Symlinkat(oldpath, AT_FDCWD, newpath)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:162:28: error: reference to undefined name 'AT_FDCWD'
  162 |  return Symlinkat(oldpath, AT_FDCWD, newpath)
      |                            ^
../../../golang.org/x/sys/unix/syscall_linux.go:166:9: error: reference to undefined name 'Unlinkat'
  166 |  return Unlinkat(AT_FDCWD, path, 0)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:166:18: error: reference to undefined name 'AT_FDCWD'
  166 |  return Unlinkat(AT_FDCWD, path, 0)
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:173:10: error: reference to undefined name 'utimensat'
  173 |   err := utimensat(AT_FDCWD, path, nil, 0)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:173:20: error: reference to undefined name 'AT_FDCWD'
  173 |   err := utimensat(AT_FDCWD, path, nil, 0)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:174:13: error: reference to undefined name 'ENOSYS'
  174 |   if err != ENOSYS {
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:177:10: error: reference to undefined name 'utimes'
  177 |   return utimes(path, nil)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:180:10: error: reference to undefined name 'EINVAL'
  180 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:185:9: error: reference to undefined name 'utimensat'
  185 |  err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:185:19: error: reference to undefined name 'AT_FDCWD'
  185 |  err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:186:12: error: reference to undefined name 'ENOSYS'
  186 |  if err != ENOSYS {
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:189:9: error: reference to undefined name 'utimes'
  189 |  return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:196:10: error: reference to undefined name 'utimensat'
  196 |   err := utimensat(AT_FDCWD, path, nil, 0)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:196:20: error: reference to undefined name 'AT_FDCWD'
  196 |   err := utimensat(AT_FDCWD, path, nil, 0)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:197:13: error: reference to undefined name 'ENOSYS'
  197 |   if err != ENOSYS {
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:200:10: error: reference to undefined name 'utimes'
  200 |   return utimes(path, nil)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:203:10: error: reference to undefined name 'EINVAL'
  203 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:205:9: error: reference to undefined name 'utimensat'
  205 |  err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:205:19: error: reference to undefined name 'AT_FDCWD'
  205 |  err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:206:12: error: reference to undefined name 'ENOSYS'
  206 |  if err != ENOSYS {
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:215:9: error: reference to undefined name 'utimes'
  215 |  return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:220:10: error: reference to undefined name 'utimensat'
  220 |   return utimensat(dirfd, path, nil, flags)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:223:10: error: reference to undefined name 'EINVAL'
  223 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:225:9: error: reference to undefined name 'utimensat'
  225 |  return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:230:10: error: reference to undefined name 'futimesat'
  230 |   return futimesat(dirfd, path, nil)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:233:10: error: reference to undefined name 'EINVAL'
  233 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:235:9: error: reference to undefined name 'futimesat'
  235 |  return futimesat(dirfd, path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:249:11: error: reference to undefined name 'PathMax'
  249 |  var buf [PathMax]byte
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:250:12: error: reference to undefined name 'Getcwd'
  250 |  n, err := Getcwd(buf[0:])
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:256:14: error: reference to undefined name 'EINVAL'
  256 |   return "", EINVAL
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:262:12: error: reference to undefined name 'getgroups'
  262 |  n, err := getgroups(0, nil)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:272:15: error: reference to undefined name 'EINVAL'
  272 |   return nil, EINVAL
      |               ^
../../../golang.org/x/sys/unix/syscall_linux.go:275:22: error: non-integer len argument in make
  275 |  a := make([]_Gid_t, n)
      |                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:276:11: error: reference to undefined name 'getgroups'
  276 |  n, err = getgroups(n, &a[0])
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:280:21: error: non-integer len argument in make
  280 |  gids = make([]int, n)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:281:2: error: range clause must have array, slice, string, map, or channel type
  281 |  for i, v := range a[0:n] {
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:289:10: error: reference to undefined name 'setgroups'
  289 |   return setgroups(0, nil)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:294:10: error: reference to undefined name '_Gid_t'
  294 |   a[i] = _Gid_t(v)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:296:9: error: reference to undefined name 'setgroups'
  296 |  return setgroups(len(a), &a[0])
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:350:23: error: reference to undefined name 'SIGTRAP'
  350 |  if w.StopSignal() != SIGTRAP {
      |                       ^
../../../golang.org/x/sys/unix/syscall_linux.go:360:14: error: reference to undefined name 'wait4'
  360 |  wpid, err = wait4(pid, &status, options, rusage)
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:368:26: error: reference to undefined name 'S_IFIFO'
  368 |  return Mknod(path, mode|S_IFIFO, 0)
      |                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:372:9: error: reference to undefined name 'Mknodat'
  372 |  return Mknodat(dirfd, path, mode|S_IFIFO, 0)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:372:35: error: reference to undefined name 'S_IFIFO'
  372 |  return Mknodat(dirfd, path, mode|S_IFIFO, 0)
      |                                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:377:18: error: reference to undefined name 'EINVAL'
  377 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:892:11: error: use of undefined type 'RawSockaddrInet4'
  892 |   pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:379:8: error: reference to field 'Family' in object which has no fields or methods
  379 |  sa.raw.Family = AF_INET
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:379:18: error: reference to undefined name 'AF_INET'
  379 |  sa.raw.Family = AF_INET
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:380:40: error: reference to field 'Port' in object which has no fields or methods
  380 |  p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port))
      |                                        ^
../../../golang.org/x/sys/unix/syscall_linux.go:384:9: error: reference to field 'Addr' in object which has no fields or methods
  384 |   sa.raw.Addr[i] = sa.Addr[i]
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:386:34: error: reference to undefined name 'SizeofSockaddrInet4'
  386 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:391:18: error: reference to undefined name 'EINVAL'
  391 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:902:11: error: use of undefined type 'RawSockaddrInet6'
  902 |   pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:393:8: error: reference to field 'Family' in object which has no fields or methods
  393 |  sa.raw.Family = AF_INET6
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:393:18: error: reference to undefined name 'AF_INET6'
  393 |  sa.raw.Family = AF_INET6
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:394:40: error: reference to field 'Port' in object which has no fields or methods
  394 |  p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port))
      |                                        ^
../../../golang.org/x/sys/unix/syscall_linux.go:397:8: error: reference to field 'Scope_id' in object which has no fields or methods
  397 |  sa.raw.Scope_id = sa.ZoneId
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:399:9: error: reference to field 'Addr' in object which has no fields or methods
  399 |   sa.raw.Addr[i] = sa.Addr[i]
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:401:34: error: reference to undefined name 'SizeofSockaddrInet6'
  401 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:867:11: error: use of undefined type 'RawSockaddrUnix'
  867 |   pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:407:20: error: reference to field 'Path' in object which has no fields or methods
  407 |  if n >= len(sa.raw.Path) {
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:408:18: error: reference to undefined name 'EINVAL'
  408 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:410:8: error: reference to field 'Family' in object which has no fields or methods
  410 |  sa.raw.Family = AF_UNIX
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:410:18: error: reference to undefined name 'AF_UNIX'
  410 |  sa.raw.Family = AF_UNIX
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:412:9: error: reference to field 'Path' in object which has no fields or methods
  412 |   sa.raw.Path[i] = int8(name[i])
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:415:8: error: reference to undefined name '_Socklen'
  415 |  sl := _Socklen(2)
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:417:9: error: reference to undefined name '_Socklen'
  417 |   sl += _Socklen(n) + 1
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:419:11: error: reference to field 'Path' in object which has no fields or methods
  419 |  if sa.raw.Path[0] == '@' {
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:420:9: error: reference to field 'Path' in object which has no fields or methods
  420 |   sa.raw.Path[0] = 0
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:422:3: error: increment or decrement of non-numeric type
  422 |   sl--
      |   ^
../../../golang.org/x/sys/unix/syscall_linux.go:441:18: error: reference to undefined name 'EINVAL'
  441 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:436:11: error: use of undefined type 'RawSockaddrLinklayer'
  436 |  raw      RawSockaddrLinklayer
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:443:8: error: reference to field 'Family' in object which has no fields or methods
  443 |  sa.raw.Family = AF_PACKET
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:443:18: error: reference to undefined name 'AF_PACKET'
  443 |  sa.raw.Family = AF_PACKET
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:444:8: error: reference to field 'Protocol' in object which has no fields or methods
  444 |  sa.raw.Protocol = sa.Protocol
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:445:8: error: reference to field 'Ifindex' in object which has no fields or methods
  445 |  sa.raw.Ifindex = int32(sa.Ifindex)
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:446:8: error: reference to field 'Hatype' in object which has no fields or methods
  446 |  sa.raw.Hatype = sa.Hatype
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:447:8: error: reference to field 'Pkttype' in object which has no fields or methods
  447 |  sa.raw.Pkttype = sa.Pkttype
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:448:8: error: reference to field 'Halen' in object which has no fields or methods
  448 |  sa.raw.Halen = sa.Halen
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:450:9: error: reference to field 'Addr' in object which has no fields or methods
  450 |   sa.raw.Addr[i] = sa.Addr[i]
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:452:34: error: reference to undefined name 'SizeofSockaddrLinklayer'
  452 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrLinklayer, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:461:9: error: use of undefined type 'RawSockaddrNetlink'
  461 |  raw    RawSockaddrNetlink
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:465:8: error: reference to field 'Family' in object which has no fields or methods
  465 |  sa.raw.Family = AF_NETLINK
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:465:18: error: reference to undefined name 'AF_NETLINK'
  465 |  sa.raw.Family = AF_NETLINK
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:466:8: error: reference to field 'Pad' in object which has no fields or methods
  466 |  sa.raw.Pad = sa.Pad
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:467:8: error: reference to field 'Pid' in object which has no fields or methods
  467 |  sa.raw.Pid = sa.Pid
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:468:8: error: reference to field 'Groups' in object which has no fields or methods
  468 |  sa.raw.Groups = sa.Groups
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:469:34: error: reference to undefined name 'SizeofSockaddrNetlink'
  469 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrNetlink, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:477:10: error: use of undefined type 'RawSockaddrHCI'
  477 |  raw     RawSockaddrHCI
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:481:8: error: reference to field 'Family' in object which has no fields or methods
  481 |  sa.raw.Family = AF_BLUETOOTH
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:481:18: error: reference to undefined name 'AF_BLUETOOTH'
  481 |  sa.raw.Family = AF_BLUETOOTH
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:482:8: error: reference to field 'Dev' in object which has no fields or methods
  482 |  sa.raw.Dev = sa.Dev
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:483:8: error: reference to field 'Channel' in object which has no fields or methods
  483 |  sa.raw.Channel = sa.Channel
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:484:34: error: reference to undefined name 'SizeofSockaddrHCI'
  484 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrHCI, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:494:11: error: use of undefined type 'RawSockaddrL2'
  494 |  raw      RawSockaddrL2
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:498:8: error: reference to field 'Family' in object which has no fields or methods
  498 |  sa.raw.Family = AF_BLUETOOTH
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:498:18: error: reference to undefined name 'AF_BLUETOOTH'
  498 |  sa.raw.Family = AF_BLUETOOTH
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:499:42: error: reference to field 'Psm' in object which has no fields or methods
  499 |  psm := (*[2]byte)(unsafe.Pointer(&sa.raw.Psm))
      |                                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:503:9: error: reference to field 'Bdaddr' in object which has no fields or methods
  503 |   sa.raw.Bdaddr[i] = sa.Addr[len(sa.Addr)-1-i]
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:505:42: error: reference to field 'Cid' in object which has no fields or methods
  505 |  cid := (*[2]byte)(unsafe.Pointer(&sa.raw.Cid))
      |                                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:508:8: error: reference to field 'Bdaddr_type' in object which has no fields or methods
  508 |  sa.raw.Bdaddr_type = sa.AddrType
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:509:34: error: reference to undefined name 'SizeofSockaddrL2'
  509 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrL2, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:543:6: error: use of undefined type 'RawSockaddrRFCOMM'
  543 |  raw RawSockaddrRFCOMM
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:547:8: error: reference to field 'Family' in object which has no fields or methods
  547 |  sa.raw.Family = AF_BLUETOOTH
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:547:18: error: reference to undefined name 'AF_BLUETOOTH'
  547 |  sa.raw.Family = AF_BLUETOOTH
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:548:8: error: reference to field 'Channel' in object which has no fields or methods
  548 |  sa.raw.Channel = sa.Channel
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:549:8: error: reference to field 'Bdaddr' in object which has no fields or methods
  549 |  sa.raw.Bdaddr = sa.Addr
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:550:34: error: reference to undefined name 'SizeofSockaddrRFCOMM'
  550 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrRFCOMM, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:579:18: error: reference to undefined name 'EINVAL'
  579 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:574:10: error: use of undefined type 'RawSockaddrCAN'
  574 |  raw     RawSockaddrCAN
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:581:8: error: reference to field 'Family' in object which has no fields or methods
  581 |  sa.raw.Family = AF_CAN
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:581:18: error: reference to undefined name 'AF_CAN'
  581 |  sa.raw.Family = AF_CAN
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:582:8: error: reference to field 'Ifindex' in object which has no fields or methods
  582 |  sa.raw.Ifindex = int32(sa.Ifindex)
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:585:9: error: reference to field 'Addr' in object which has no fields or methods
  585 |   sa.raw.Addr[i] = rx[i]
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:589:9: error: reference to field 'Addr' in object which has no fields or methods
  589 |   sa.raw.Addr[i+4] = tx[i]
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:591:34: error: reference to undefined name 'SizeofSockaddrCAN'
  591 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrCAN, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:668:18: error: reference to undefined name 'EINVAL'
  668 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:671:18: error: reference to undefined name 'EINVAL'
  671 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:662:10: error: use of undefined type 'RawSockaddrALG'
  662 |  raw     RawSockaddrALG
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:674:8: error: reference to field 'Family' in object which has no fields or methods
  674 |  sa.raw.Family = AF_ALG
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:674:18: error: reference to undefined name 'AF_ALG'
  674 |  sa.raw.Family = AF_ALG
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:675:8: error: reference to field 'Feat' in object which has no fields or methods
  675 |  sa.raw.Feat = sa.Feature
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:676:8: error: reference to field 'Mask' in object which has no fields or methods
  676 |  sa.raw.Mask = sa.Mask
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:687:13: error: reference to field 'Type' in object which has no fields or methods
  687 |  copy(sa.raw.Type[:], typ)
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:688:13: error: reference to field 'Name' in object which has no fields or methods
  688 |  copy(sa.raw.Name[:], name)
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:690:34: error: reference to undefined name 'SizeofSockaddrALG'
  690 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrALG, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:704:7: error: use of undefined type 'RawSockaddrVM'
  704 |  raw  RawSockaddrVM
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:708:8: error: reference to field 'Family' in object which has no fields or methods
  708 |  sa.raw.Family = AF_VSOCK
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:708:18: error: reference to undefined name 'AF_VSOCK'
  708 |  sa.raw.Family = AF_VSOCK
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:709:8: error: reference to field 'Port' in object which has no fields or methods
  709 |  sa.raw.Port = sa.Port
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:710:8: error: reference to field 'Cid' in object which has no fields or methods
  710 |  sa.raw.Cid = sa.CID
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:712:34: error: reference to undefined name 'SizeofSockaddrVM'
  712 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrVM, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:720:15: error: use of undefined type 'RawSockaddrXDP'
  720 |  raw          RawSockaddrXDP
      |               ^
../../../golang.org/x/sys/unix/syscall_linux.go:724:8: error: reference to field 'Family' in object which has no fields or methods
  724 |  sa.raw.Family = AF_XDP
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:724:18: error: reference to undefined name 'AF_XDP'
  724 |  sa.raw.Family = AF_XDP
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:725:8: error: reference to field 'Flags' in object which has no fields or methods
  725 |  sa.raw.Flags = sa.Flags
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:726:8: error: reference to field 'Ifindex' in object which has no fields or methods
  726 |  sa.raw.Ifindex = sa.Ifindex
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:727:8: error: reference to field 'Queue_id' in object which has no fields or methods
  727 |  sa.raw.Queue_id = sa.QueueID
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:728:8: error: reference to field 'Shared_umem_fd' in object which has no fields or methods
  728 |  sa.raw.Shared_umem_fd = sa.SharedUmemFD
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:730:34: error: reference to undefined name 'SizeofSockaddrXDP'
  730 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrXDP, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:751:18: error: reference to undefined name 'EINVAL'
  751 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:753:19: error: reference to undefined name 'IFNAMSIZ'
  753 |  if len(sa.Dev) > IFNAMSIZ-1 {
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:754:18: error: reference to undefined name 'EINVAL'
  754 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:746:9: error: use of undefined type 'RawSockaddrPPPoX'
  746 |  raw    RawSockaddrPPPoX
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:757:43: error: reference to undefined name 'AF_PPPOX'
  757 |  *(*uint16)(unsafe.Pointer(&sa.raw[0])) = AF_PPPOX
      |                                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:771:22: error: reference to undefined name 'IFNAMSIZ'
  771 |  for i := 14; i < 14+IFNAMSIZ; i++ {
      |                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:775:34: error: reference to undefined name 'SizeofSockaddrPPPoX'
  775 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrPPPoX, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:805:11: error: use of undefined type 'TIPCSocketAddr'
  805 | func (sa *TIPCSocketAddr) tipcAddr() [12]byte {
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:811:57: error: reference to undefined name 'TIPC_SOCKET_ADDR'
  811 | func (sa *TIPCSocketAddr) tipcAddrtype() uint8 { return TIPC_SOCKET_ADDR }
      |                                                         ^
../../../golang.org/x/sys/unix/syscall_linux.go:813:11: error: use of undefined type 'TIPCServiceRange'
  813 | func (sa *TIPCServiceRange) tipcAddr() [12]byte {
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:819:59: error: reference to undefined name 'TIPC_SERVICE_RANGE'
  819 | func (sa *TIPCServiceRange) tipcAddrtype() uint8 { return TIPC_SERVICE_RANGE }
      |                                                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:821:11: error: use of undefined type 'TIPCServiceName'
  821 | func (sa *TIPCServiceName) tipcAddr() [12]byte {
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:827:58: error: reference to undefined name 'TIPC_SERVICE_ADDR'
  827 | func (sa *TIPCServiceName) tipcAddrtype() uint8 { return TIPC_SERVICE_ADDR }
      |                                                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:831:18: error: reference to undefined name 'EINVAL'
  831 |   return nil, 0, EINVAL
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:794:6: error: use of undefined type 'RawSockaddrTIPC'
  794 |  raw RawSockaddrTIPC
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:834:8: error: reference to field 'Family' in object which has no fields or methods
  834 |  sa.raw.Family = AF_TIPC
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:834:18: error: reference to undefined name 'AF_TIPC'
  834 |  sa.raw.Family = AF_TIPC
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:835:8: error: reference to field 'Scope' in object which has no fields or methods
  835 |  sa.raw.Scope = int8(sa.Scope)
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:836:8: error: reference to field 'Addrtype' in object which has no fields or methods
  836 |  sa.raw.Addrtype = sa.Addr.tipcAddrtype()
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:837:8: error: reference to field 'Addr' in object which has no fields or methods
  837 |  sa.raw.Addr = sa.Addr.tipcAddr()
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:839:34: error: reference to undefined name 'SizeofSockaddrTIPC'
  839 |  return unsafe.Pointer(&sa.raw), SizeofSockaddrTIPC, nil
      |                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:842:33: error: use of undefined type 'RawSockaddrAny'
  842 | func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
      |                                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:843:12: error: reference to field 'Addr' in object which has no fields or methods
  843 |  switch rsa.Addr.Family {
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:844:7: error: reference to undefined name 'AF_NETLINK'
  844 |  case AF_NETLINK:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:845:11: error: reference to undefined name 'RawSockaddrNetlink'
  845 |   pp := (*RawSockaddrNetlink)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:845:10: error: expected pointer
  845 |   pp := (*RawSockaddrNetlink)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:853:7: error: reference to undefined name 'AF_PACKET'
  853 |  case AF_PACKET:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:854:11: error: reference to undefined name 'RawSockaddrLinklayer'
  854 |   pp := (*RawSockaddrLinklayer)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:854:10: error: expected pointer
  854 |   pp := (*RawSockaddrLinklayer)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:866:7: error: reference to undefined name 'AF_UNIX'
  866 |  case AF_UNIX:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:867:11: error: reference to undefined name 'RawSockaddrUnix'
  867 |   pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:867:10: error: expected pointer
  867 |   pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:891:7: error: reference to undefined name 'AF_INET'
  891 |  case AF_INET:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:892:11: error: reference to undefined name 'RawSockaddrInet4'
  892 |   pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:892:10: error: expected pointer
  892 |   pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:901:7: error: reference to undefined name 'AF_INET6'
  901 |  case AF_INET6:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:902:11: error: reference to undefined name 'RawSockaddrInet6'
  902 |   pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:902:10: error: expected pointer
  902 |   pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:912:7: error: reference to undefined name 'AF_VSOCK'
  912 |  case AF_VSOCK:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:913:11: error: reference to undefined name 'RawSockaddrVM'
  913 |   pp := (*RawSockaddrVM)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:913:10: error: expected pointer
  913 |   pp := (*RawSockaddrVM)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:919:7: error: reference to undefined name 'AF_BLUETOOTH'
  919 |  case AF_BLUETOOTH:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:920:35: error: reference to undefined name 'SOL_SOCKET'
  920 |   proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
      |                                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:920:47: error: reference to undefined name 'SO_PROTOCOL'
  920 |   proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
      |                                               ^
../../../golang.org/x/sys/unix/syscall_linux.go:927:12: error: reference to undefined name 'RawSockaddrL2'
  927 |    pp := (*RawSockaddrL2)(unsafe.Pointer(rsa))
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:927:11: error: expected pointer
  927 |    pp := (*RawSockaddrL2)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:936:12: error: reference to undefined name 'RawSockaddrRFCOMM'
  936 |    pp := (*RawSockaddrRFCOMM)(unsafe.Pointer(rsa))
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:936:11: error: expected pointer
  936 |    pp := (*RawSockaddrRFCOMM)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:943:7: error: reference to undefined name 'AF_XDP'
  943 |  case AF_XDP:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:944:11: error: reference to undefined name 'RawSockaddrXDP'
  944 |   pp := (*RawSockaddrXDP)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:944:10: error: expected pointer
  944 |   pp := (*RawSockaddrXDP)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:952:7: error: reference to undefined name 'AF_PPPOX'
  952 |  case AF_PPPOX:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:953:11: error: reference to undefined name 'RawSockaddrPPPoX'
  953 |   pp := (*RawSockaddrPPPoX)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:953:10: error: expected pointer
  953 |   pp := (*RawSockaddrPPPoX)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:955:16: error: reference to undefined name 'EINVAL'
  955 |    return nil, EINVAL
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:961:23: error: reference to undefined name 'IFNAMSIZ'
  961 |   for i := 14; i < 14+IFNAMSIZ; i++ {
      |                       ^
../../../golang.org/x/sys/unix/syscall_linux.go:968:7: error: reference to undefined name 'AF_TIPC'
  968 |  case AF_TIPC:
      |       ^
../../../golang.org/x/sys/unix/syscall_linux.go:969:11: error: reference to undefined name 'RawSockaddrTIPC'
  969 |   pp := (*RawSockaddrTIPC)(unsafe.Pointer(rsa))
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:969:10: error: expected pointer
  969 |   pp := (*RawSockaddrTIPC)(unsafe.Pointer(rsa))
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:978:8: error: reference to undefined name 'TIPC_SERVICE_RANGE'
  978 |   case TIPC_SERVICE_RANGE:
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:980:8: error: reference to undefined name 'TIPC_SERVICE_ADDR'
  980 |   case TIPC_SERVICE_ADDR:
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:982:8: error: reference to undefined name 'TIPC_SOCKET_ADDR'
  982 |   case TIPC_SOCKET_ADDR:
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:985:16: error: reference to undefined name 'EINVAL'
  985 |    return nil, EINVAL
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:990:14: error: reference to undefined name 'EAFNOSUPPORT'
  990 |  return nil, EAFNOSUPPORT
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:995:21: error: reference to undefined name 'SizeofSockaddrAny'
  995 |  var len _Socklen = SizeofSockaddrAny
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:996:13: error: reference to undefined name 'accept'
  996 |  nfd, err = accept(fd, &rsa, &len)
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1002:3: error: reference to undefined name 'Close'
 1002 |   Close(nfd)
      |   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1010:21: error: reference to undefined name 'SizeofSockaddrAny'
 1010 |  var len _Socklen = SizeofSockaddrAny
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1011:13: error: reference to undefined name 'accept4'
 1011 |  nfd, err = accept4(fd, &rsa, &len, flags)
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1015:11: error: reference to undefined name 'SizeofSockaddrAny'
 1015 |  if len > SizeofSockaddrAny {
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1020:3: error: reference to undefined name 'Close'
 1020 |   Close(nfd)
      |   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1028:21: error: reference to undefined name 'SizeofSockaddrAny'
 1028 |  var len _Socklen = SizeofSockaddrAny
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1029:11: error: reference to undefined name 'getsockname'
 1029 |  if err = getsockname(fd, &rsa, &len); err != nil {
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1037:12: error: reference to undefined name '_Socklen'
 1037 |  vallen := _Socklen(SizeofIPMreqn)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1037:21: error: reference to undefined name 'SizeofIPMreqn'
 1037 |  vallen := _Socklen(SizeofIPMreqn)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1038:9: error: reference to undefined name 'getsockopt'
 1038 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1044:12: error: reference to undefined name '_Socklen'
 1044 |  vallen := _Socklen(SizeofUcred)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1044:21: error: reference to undefined name 'SizeofUcred'
 1044 |  vallen := _Socklen(SizeofUcred)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1045:9: error: reference to undefined name 'getsockopt'
 1045 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1051:12: error: reference to undefined name '_Socklen'
 1051 |  vallen := _Socklen(SizeofTCPInfo)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1051:21: error: reference to undefined name 'SizeofTCPInfo'
 1051 |  vallen := _Socklen(SizeofTCPInfo)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1052:9: error: reference to undefined name 'getsockopt'
 1052 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1060:12: error: reference to undefined name '_Socklen'
 1060 |  vallen := _Socklen(len(buf))
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1061:9: error: reference to undefined name 'getsockopt'
 1061 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1063:13: error: reference to undefined name 'ERANGE'
 1063 |   if err == ERANGE {
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1064:23: error: non-integer len argument in make
 1064 |    buf = make([]byte, vallen)
      |                       ^
../../../golang.org/x/sys/unix/syscall_linux.go:1065:10: error: reference to undefined name 'getsockopt'
 1065 |    err = getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1076:12: error: reference to undefined name '_Socklen'
 1076 |  vallen := _Socklen(SizeofTpacketStats)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1076:21: error: reference to undefined name 'SizeofTpacketStats'
 1076 |  vallen := _Socklen(SizeofTpacketStats)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1077:9: error: reference to undefined name 'getsockopt'
 1077 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1083:12: error: reference to undefined name '_Socklen'
 1083 |  vallen := _Socklen(SizeofTpacketStatsV3)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1083:21: error: reference to undefined name 'SizeofTpacketStatsV3'
 1083 |  vallen := _Socklen(SizeofTpacketStatsV3)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1084:9: error: reference to undefined name 'getsockopt'
 1084 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1089:9: error: reference to undefined name 'setsockopt'
 1089 |  return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1035:46: error: use of undefined type 'IPMreqn'
 1035 | func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
      |                                              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1093:9: error: reference to undefined name 'setsockopt'
 1093 |  return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1092:53: error: use of undefined type 'PacketMreq'
 1092 | func SetsockoptPacketMreq(fd, level, opt int, mreq *PacketMreq) error {
      |                                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1099:9: error: reference to undefined name 'setsockopt'
 1099 |  return setsockopt(fd, level, opt, unsafe.Pointer(fprog), unsafe.Sizeof(*fprog))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1098:53: error: use of undefined type 'SockFprog'
 1098 | func SetsockoptSockFprog(fd, level, opt int, fprog *SockFprog) error {
      |                                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1107:9: error: reference to undefined name 'setsockopt'
 1107 |  return setsockopt(fd, level, opt, p, uintptr(len(filter)*SizeofCanFilter))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1107:59: error: reference to undefined name 'SizeofCanFilter'
 1107 |  return setsockopt(fd, level, opt, p, uintptr(len(filter)*SizeofCanFilter))
      |                                                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1111:9: error: reference to undefined name 'setsockopt'
 1111 |  return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1110:51: error: use of undefined type 'TpacketReq'
 1110 | func SetsockoptTpacketReq(fd, level, opt int, tp *TpacketReq) error {
      |                                                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1115:9: error: reference to undefined name 'setsockopt'
 1115 |  return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1114:52: error: use of undefined type 'TpacketReq3'
 1114 | func SetsockoptTpacketReq3(fd, level, opt int, tp *TpacketReq3) error {
      |                                                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1142:18: error: reference to undefined name 'KeyctlBuffer'
 1142 |   length, err := KeyctlBuffer(cmd, id, buffer, 0)
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1154:25: error: non-integer len argument in make
 1154 |   buffer = make([]byte, length)
      |                         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1168:9: error: reference to undefined name 'KeyctlInt'
 1168 |  return KeyctlInt(KEYCTL_GET_KEYRING_ID, id, createInt, 0, 0)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1168:19: error: reference to undefined name 'KEYCTL_GET_KEYRING_ID'
 1168 |  return KeyctlInt(KEYCTL_GET_KEYRING_ID, id, createInt, 0, 0)
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1168:2: error: not enough arguments to return
 1168 |  return KeyctlInt(KEYCTL_GET_KEYRING_ID, id, createInt, 0, 0)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1177:12: error: reference to undefined name 'KeyctlInt'
 1177 |  _, err := KeyctlInt(KEYCTL_SETPERM, id, int(perm), 0, 0)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1177:22: error: reference to undefined name 'KEYCTL_SETPERM'
 1177 |  _, err := KeyctlInt(KEYCTL_SETPERM, id, int(perm), 0, 0)
      |                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1187:9: error: reference to undefined name 'keyctlJoin'
 1187 |  return keyctlJoin(KEYCTL_JOIN_SESSION_KEYRING, name)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1187:20: error: reference to undefined name 'KEYCTL_JOIN_SESSION_KEYRING'
 1187 |  return keyctlJoin(KEYCTL_JOIN_SESSION_KEYRING, name)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1187:2: error: not enough arguments to return
 1187 |  return keyctlJoin(KEYCTL_JOIN_SESSION_KEYRING, name)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1196:9: error: reference to undefined name 'keyctlSearch'
 1196 |  return keyctlSearch(KEYCTL_SEARCH, ringid, keyType, description, destRingid)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1196:22: error: reference to undefined name 'KEYCTL_SEARCH'
 1196 |  return keyctlSearch(KEYCTL_SEARCH, ringid, keyType, description, destRingid)
      |                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1196:2: error: not enough arguments to return
 1196 |  return keyctlSearch(KEYCTL_SEARCH, ringid, keyType, description, destRingid)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1207:9: error: reference to undefined name 'keyctlIOV'
 1207 |  return keyctlIOV(KEYCTL_INSTANTIATE_IOV, id, payload, ringid)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1207:19: error: reference to undefined name 'KEYCTL_INSTANTIATE_IOV'
 1207 |  return keyctlIOV(KEYCTL_INSTANTIATE_IOV, id, payload, ringid)
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1222:9: error: reference to undefined name 'keyctlDH'
 1222 |  return keyctlDH(KEYCTL_DH_COMPUTE, params, buffer)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1222:18: error: reference to undefined name 'KEYCTL_DH_COMPUTE'
 1222 |  return keyctlDH(KEYCTL_DH_COMPUTE, params, buffer)
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1222:2: error: not enough arguments to return
 1222 |  return keyctlDH(KEYCTL_DH_COMPUTE, params, buffer)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1245:10: error: reference to undefined name 'keyctlRestrictKeyring'
 1245 |   return keyctlRestrictKeyring(KEYCTL_RESTRICT_KEYRING, ringid)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1245:32: error: reference to undefined name 'KEYCTL_RESTRICT_KEYRING'
 1245 |   return keyctlRestrictKeyring(KEYCTL_RESTRICT_KEYRING, ringid)
      |                                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1247:9: error: reference to undefined name 'keyctlRestrictKeyringByType'
 1247 |  return keyctlRestrictKeyringByType(KEYCTL_RESTRICT_KEYRING, ringid, keyType, restriction)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1247:37: error: reference to undefined name 'KEYCTL_RESTRICT_KEYRING'
 1247 |  return keyctlRestrictKeyringByType(KEYCTL_RESTRICT_KEYRING, ringid, keyType, restriction)
      |                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1254:10: error: use of undefined type 'Msghdr'
 1254 |  var msg Msghdr
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1256:5: error: reference to field 'Name' in object which has no fields or methods
 1256 |  msg.Name = (*byte)(unsafe.Pointer(&rsa))
      |     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1257:5: error: reference to field 'Namelen' in object which has no fields or methods
 1257 |  msg.Namelen = uint32(SizeofSockaddrAny)
      |     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1257:23: error: reference to undefined name 'SizeofSockaddrAny'
 1257 |  msg.Namelen = uint32(SizeofSockaddrAny)
      |                       ^
../../../golang.org/x/sys/unix/syscall_linux.go:1206:45: error: use of undefined type 'Iovec'
 1206 | func KeyctlInstantiateIOV(id int, payload []Iovec, ringid int) error {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1260:6: error: reference to field 'Base' in object which has no fields or methods
 1260 |   iov.Base = &p[0]
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1261:6: error: reference to field 'SetLen' in object which has no fields or methods
 1261 |   iov.SetLen(len(p))
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1267:38: error: reference to undefined name 'SOL_SOCKET'
 1267 |    sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
      |                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1267:50: error: reference to undefined name 'SO_TYPE'
 1267 |    sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
      |                                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1272:19: error: reference to undefined name 'SOCK_DGRAM'
 1272 |    if sockType != SOCK_DGRAM {
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1273:8: error: reference to field 'Base' in object which has no fields or methods
 1273 |     iov.Base = &dummy
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1274:8: error: reference to field 'SetLen' in object which has no fields or methods
 1274 |     iov.SetLen(1)
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1277:6: error: reference to field 'Control' in object which has no fields or methods
 1277 |   msg.Control = &oob[0]
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1278:6: error: reference to field 'SetControllen' in object which has no fields or methods
 1278 |   msg.SetControllen(len(oob))
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1280:5: error: reference to field 'Iov' in object which has no fields or methods
 1280 |  msg.Iov = &iov
      |     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1281:5: error: reference to field 'Iovlen' in object which has no fields or methods
 1281 |  msg.Iovlen = 1
      |     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1282:14: error: reference to undefined name 'recvmsg'
 1282 |  if n, err = recvmsg(fd, &msg, flags); err != nil {
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1285:16: error: reference to field 'Controllen' in object which has no fields or methods
 1285 |  oobn = int(msg.Controllen)
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1286:21: error: reference to field 'Flags' in object which has no fields or methods
 1286 |  recvflags = int(msg.Flags)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:842:33: error: use of undefined type 'RawSockaddrAny'
  842 | func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
      |                                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:1288:8: error: reference to field 'Addr' in object which has no fields or methods
 1288 |  if rsa.Addr.Family != AF_UNSPEC {
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1288:24: error: reference to undefined name 'AF_UNSPEC'
 1288 |  if rsa.Addr.Family != AF_UNSPEC {
      |                        ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1254:10: error: use of undefined type 'Msghdr'
 1254 |  var msg Msghdr
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1310:5: error: reference to field 'Name' in object which has no fields or methods
 1310 |  msg.Name = (*byte)(ptr)
      |     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1311:5: error: reference to field 'Namelen' in object which has no fields or methods
 1311 |  msg.Namelen = uint32(salen)
      |     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1206:45: error: use of undefined type 'Iovec'
 1206 | func KeyctlInstantiateIOV(id int, payload []Iovec, ringid int) error {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1314:6: error: reference to field 'Base' in object which has no fields or methods
 1314 |   iov.Base = &p[0]
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1315:6: error: reference to field 'SetLen' in object which has no fields or methods
 1315 |   iov.SetLen(len(p))
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1321:38: error: reference to undefined name 'SOL_SOCKET'
 1321 |    sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
      |                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1321:50: error: reference to undefined name 'SO_TYPE'
 1321 |    sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
      |                                                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1326:19: error: reference to undefined name 'SOCK_DGRAM'
 1326 |    if sockType != SOCK_DGRAM {
      |                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1327:8: error: reference to field 'Base' in object which has no fields or methods
 1327 |     iov.Base = &dummy
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1328:8: error: reference to field 'SetLen' in object which has no fields or methods
 1328 |     iov.SetLen(1)
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1331:6: error: reference to field 'Control' in object which has no fields or methods
 1331 |   msg.Control = &oob[0]
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1332:6: error: reference to field 'SetControllen' in object which has no fields or methods
 1332 |   msg.SetControllen(len(oob))
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1334:5: error: reference to field 'Iov' in object which has no fields or methods
 1334 |  msg.Iov = &iov
      |     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1335:5: error: reference to field 'Iovlen' in object which has no fields or methods
 1335 |  msg.Iovlen = 1
      |     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1336:14: error: reference to undefined name 'sendmsg'
 1336 |  if n, err = sendmsg(fd, &msg, flags); err != nil {
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1347:30: error: reference to undefined name 'SOL_SOCKET'
 1347 |  return SetsockoptString(fd, SOL_SOCKET, SO_BINDTODEVICE, device)
      |                              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1347:42: error: reference to undefined name 'SO_BINDTODEVICE'
 1347 |  return SetsockoptString(fd, SOL_SOCKET, SO_BINDTODEVICE, device)
      |                                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1359:11: error: reference to undefined name 'SizeofPtr'
 1359 |  var buf [SizeofPtr]byte
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1367:10: error: reference to undefined name 'SizeofPtr'
 1367 |  if addr%SizeofPtr != 0 {
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1368:9: error: reference to undefined name 'ptrace'
 1368 |   err = ptrace(req, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1368:36: error: reference to undefined name 'SizeofPtr'
 1368 |   err = ptrace(req, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
      |                                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1372:27: error: reference to undefined name 'SizeofPtr'
 1372 |   n += copy(out, buf[addr%SizeofPtr:])
      |                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1380:9: error: reference to undefined name 'ptrace'
 1380 |   err = ptrace(req, pid, addr+uintptr(n), uintptr(unsafe.Pointer(&buf[0])))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1393:20: error: reference to undefined name 'PTRACE_PEEKTEXT'
 1393 |  return ptracePeek(PTRACE_PEEKTEXT, pid, addr, out)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1397:20: error: reference to undefined name 'PTRACE_PEEKDATA'
 1397 |  return ptracePeek(PTRACE_PEEKDATA, pid, addr, out)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1401:20: error: reference to undefined name 'PTRACE_PEEKUSR'
 1401 |  return ptracePeek(PTRACE_PEEKUSR, pid, addr, out)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1410:10: error: reference to undefined name 'SizeofPtr'
 1410 |  if addr%SizeofPtr != 0 {
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1411:12: error: reference to undefined name 'SizeofPtr'
 1411 |   var buf [SizeofPtr]byte
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1412:9: error: reference to undefined name 'ptrace'
 1412 |   err = ptrace(peekReq, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1412:40: error: reference to undefined name 'SizeofPtr'
 1412 |   err = ptrace(peekReq, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
      |                                        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1416:22: error: reference to undefined name 'SizeofPtr'
 1416 |   n += copy(buf[addr%SizeofPtr:], data)
      |                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1418:9: error: reference to undefined name 'ptrace'
 1418 |   err = ptrace(pokeReq, pid, addr-addr%SizeofPtr, word)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1418:40: error: reference to undefined name 'SizeofPtr'
 1418 |   err = ptrace(pokeReq, pid, addr-addr%SizeofPtr, word)
      |                                        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1426:18: error: reference to undefined name 'SizeofPtr'
 1426 |  for len(data) > SizeofPtr {
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1428:9: error: reference to undefined name 'ptrace'
 1428 |   err = ptrace(pokeReq, pid, addr+uintptr(n), word)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1432:8: error: reference to undefined name 'SizeofPtr'
 1432 |   n += SizeofPtr
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1433:15: error: reference to undefined name 'SizeofPtr'
 1433 |   data = data[SizeofPtr:]
      |               ^
../../../golang.org/x/sys/unix/syscall_linux.go:1438:12: error: reference to undefined name 'SizeofPtr'
 1438 |   var buf [SizeofPtr]byte
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1439:9: error: reference to undefined name 'ptrace'
 1439 |   err = ptrace(peekReq, pid, addr+uintptr(n), uintptr(unsafe.Pointer(&buf[0])))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1445:9: error: reference to undefined name 'ptrace'
 1445 |   err = ptrace(pokeReq, pid, addr+uintptr(n), word)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1456:20: error: reference to undefined name 'PTRACE_POKETEXT'
 1456 |  return ptracePoke(PTRACE_POKETEXT, PTRACE_PEEKTEXT, pid, addr, data)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1456:37: error: reference to undefined name 'PTRACE_PEEKTEXT'
 1456 |  return ptracePoke(PTRACE_POKETEXT, PTRACE_PEEKTEXT, pid, addr, data)
      |                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1460:20: error: reference to undefined name 'PTRACE_POKEDATA'
 1460 |  return ptracePoke(PTRACE_POKEDATA, PTRACE_PEEKDATA, pid, addr, data)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1460:37: error: reference to undefined name 'PTRACE_PEEKDATA'
 1460 |  return ptracePoke(PTRACE_POKEDATA, PTRACE_PEEKDATA, pid, addr, data)
      |                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1464:20: error: reference to undefined name 'PTRACE_POKEUSR'
 1464 |  return ptracePoke(PTRACE_POKEUSR, PTRACE_PEEKUSR, pid, addr, data)
      |                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1464:36: error: reference to undefined name 'PTRACE_PEEKUSR'
 1464 |  return ptracePoke(PTRACE_POKEUSR, PTRACE_PEEKUSR, pid, addr, data)
      |                                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1468:9: error: reference to undefined name 'ptrace'
 1468 |  return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1468:16: error: reference to undefined name 'PTRACE_GETREGS'
 1468 |  return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1472:9: error: reference to undefined name 'ptrace'
 1472 |  return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1472:16: error: reference to undefined name 'PTRACE_SETREGS'
 1472 |  return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1476:9: error: reference to undefined name 'ptrace'
 1476 |  return ptrace(PTRACE_SETOPTIONS, pid, 0, uintptr(options))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1476:16: error: reference to undefined name 'PTRACE_SETOPTIONS'
 1476 |  return ptrace(PTRACE_SETOPTIONS, pid, 0, uintptr(options))
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1481:8: error: reference to undefined name 'ptrace'
 1481 |  err = ptrace(PTRACE_GETEVENTMSG, pid, 0, uintptr(unsafe.Pointer(&data)))
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1481:15: error: reference to undefined name 'PTRACE_GETEVENTMSG'
 1481 |  err = ptrace(PTRACE_GETEVENTMSG, pid, 0, uintptr(unsafe.Pointer(&data)))
      |               ^
../../../golang.org/x/sys/unix/syscall_linux.go:1487:9: error: reference to undefined name 'ptrace'
 1487 |  return ptrace(PTRACE_CONT, pid, 0, uintptr(signal))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1487:16: error: reference to undefined name 'PTRACE_CONT'
 1487 |  return ptrace(PTRACE_CONT, pid, 0, uintptr(signal))
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1491:9: error: reference to undefined name 'ptrace'
 1491 |  return ptrace(PTRACE_SYSCALL, pid, 0, uintptr(signal))
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1491:16: error: reference to undefined name 'PTRACE_SYSCALL'
 1491 |  return ptrace(PTRACE_SYSCALL, pid, 0, uintptr(signal))
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1494:53: error: reference to undefined name 'ptrace'
 1494 | func PtraceSingleStep(pid int) (err error) { return ptrace(PTRACE_SINGLESTEP, pid, 0, 0) }
      |                                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1494:60: error: reference to undefined name 'PTRACE_SINGLESTEP'
 1494 | func PtraceSingleStep(pid int) (err error) { return ptrace(PTRACE_SINGLESTEP, pid, 0, 0) }
      |                                                            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1496:52: error: reference to undefined name 'ptrace'
 1496 | func PtraceInterrupt(pid int) (err error) { return ptrace(PTRACE_INTERRUPT, pid, 0, 0) }
      |                                                    ^
../../../golang.org/x/sys/unix/syscall_linux.go:1496:59: error: reference to undefined name 'PTRACE_INTERRUPT'
 1496 | func PtraceInterrupt(pid int) (err error) { return ptrace(PTRACE_INTERRUPT, pid, 0, 0) }
      |                                                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1498:49: error: reference to undefined name 'ptrace'
 1498 | func PtraceAttach(pid int) (err error) { return ptrace(PTRACE_ATTACH, pid, 0, 0) }
      |                                                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:1498:56: error: reference to undefined name 'PTRACE_ATTACH'
 1498 | func PtraceAttach(pid int) (err error) { return ptrace(PTRACE_ATTACH, pid, 0, 0) }
      |                                                        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1500:48: error: reference to undefined name 'ptrace'
 1500 | func PtraceSeize(pid int) (err error) { return ptrace(PTRACE_SEIZE, pid, 0, 0) }
      |                                                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1500:55: error: reference to undefined name 'PTRACE_SEIZE'
 1500 | func PtraceSeize(pid int) (err error) { return ptrace(PTRACE_SEIZE, pid, 0, 0) }
      |                                                       ^
../../../golang.org/x/sys/unix/syscall_linux.go:1502:49: error: reference to undefined name 'ptrace'
 1502 | func PtraceDetach(pid int) (err error) { return ptrace(PTRACE_DETACH, pid, 0, 0) }
      |                                                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:1502:56: error: reference to undefined name 'PTRACE_DETACH'
 1502 | func PtraceDetach(pid int) (err error) { return ptrace(PTRACE_DETACH, pid, 0, 0) }
      |                                                        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1507:9: error: reference to undefined name 'reboot'
 1507 |  return reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, "")
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1507:16: error: reference to undefined name 'LINUX_REBOOT_MAGIC1'
 1507 |  return reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, "")
      |                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1507:37: error: reference to undefined name 'LINUX_REBOOT_MAGIC2'
 1507 |  return reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, "")
      |                                     ^
../../../golang.org/x/sys/unix/dirent.go:81:41: error: use of undefined type 'Dirent'
   81 |   const namoff = uint64(unsafe.Offsetof(Dirent{}.Name))
      |                                         ^
../../../golang.org/x/sys/unix/dirent.go:81:41: error: use of undefined type 'Dirent'
../../../golang.org/x/sys/unix/dirent.go:81:41: error: use of undefined type 'Dirent'
../../../golang.org/x/sys/unix/dirent.go:81:41: error: use of undefined type 'Dirent'
../../../golang.org/x/sys/unix/dirent.go:81:41: error: use of undefined type 'Dirent'
../../../golang.org/x/sys/unix/syscall_linux.go:1532:10: error: reference to undefined name 'mount'
 1532 |   return mount(source, target, fstype, flags, nil)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1538:9: error: reference to undefined name 'mount'
 1538 |  return mount(source, target, fstype, flags, datap)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1545:9: error: reference to undefined name 'sendfile'
 1545 |  return sendfile(outfd, infd, offset, count)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1545:2: error: not enough arguments to return
 1545 |  return sendfile(outfd, infd, offset, count)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1590:11: error: reference to undefined name 'Getpgid'
 1590 |  pid, _ = Getpgid(0)
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1637:26: error: reference to undefined name 'SYS_PRCTL'
 1637 |  ret, _, err := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
      |                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1650:9: error: reference to undefined name 'EOPNOTSUPP'
 1650 |  return EOPNOTSUPP
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1654:9: error: reference to undefined name 'EOPNOTSUPP'
 1654 |  return EOPNOTSUPP
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1661:9: error: reference to undefined name 'setfsgid'
 1661 |  return setfsgid(gid)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1661:2: error: not enough arguments to return
 1661 |  return setfsgid(gid)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1668:9: error: reference to undefined name 'setfsuid'
 1668 |  return setfsuid(uid)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1668:2: error: not enough arguments to return
 1668 |  return setfsuid(uid)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1672:12: error: reference to undefined name 'setfsgid'
 1672 |  _, err := setfsgid(gid)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1677:12: error: reference to undefined name 'setfsuid'
 1677 |  _, err := setfsuid(uid)
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1682:9: error: reference to undefined name 'signalfd'
 1682 |  return signalfd(fd, sigmask, _C__NSIG/8, flags)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1682:31: error: reference to undefined name '_C__NSIG'
 1682 |  return signalfd(fd, sigmask, _C__NSIG/8, flags)
      |                               ^
../../../golang.org/x/sys/unix/syscall_linux.go:1682:2: error: not enough arguments to return
 1682 |  return signalfd(fd, sigmask, _C__NSIG/8, flags)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1206:45: error: use of undefined type 'Iovec'
 1206 | func KeyctlInstantiateIOV(id int, payload []Iovec, ringid int) error {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1713:12: error: reference to field 'SetLen' in object which has no fields or methods
 1713 |   iovecs[i].SetLen(len(b))
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1715:13: error: reference to field 'Base' in object which has no fields or methods
 1715 |    iovecs[i].Base = &b[0]
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1717:13: error: reference to field 'Base' in object which has no fields or methods
 1717 |    iovecs[i].Base = (*byte)(unsafe.Pointer(&_zero))
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1728:48: error: reference to undefined name 'SizeofLong'
 1728 |  return uintptr(offs), uintptr(uint64(offs) >> SizeofLong)
      |                                                ^
../../../golang.org/x/sys/unix/syscall_linux.go:1733:11: error: reference to undefined name 'readv'
 1733 |  n, err = readv(fd, iovecs)
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1741:11: error: reference to undefined name 'preadv'
 1741 |  n, err = preadv(fd, iovecs, lo, hi)
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1749:11: error: reference to undefined name 'preadv2'
 1749 |  n, err = preadv2(fd, iovecs, lo, hi, flags)
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1206:45: error: use of undefined type 'Iovec'
 1206 | func KeyctlInstantiateIOV(id int, payload []Iovec, ringid int) error {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1759:21: error: reference to field 'Len' in object which has no fields or methods
 1759 |   m := int(iovecs[i].Len)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1765:43: error: reference to field 'Base' in object which has no fields or methods
 1765 |    raceWriteRange(unsafe.Pointer(iovecs[i].Base), m)
      |                                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1778:11: error: reference to undefined name 'writev'
 1778 |  n, err = writev(fd, iovecs)
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1789:11: error: reference to undefined name 'pwritev'
 1789 |  n, err = pwritev(fd, iovecs, lo, hi)
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1800:11: error: reference to undefined name 'pwritev2'
 1800 |  n, err = pwritev2(fd, iovecs, lo, hi, flags)
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1206:45: error: use of undefined type 'Iovec'
 1206 | func KeyctlInstantiateIOV(id int, payload []Iovec, ringid int) error {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1810:21: error: reference to field 'Len' in object which has no fields or methods
 1810 |   m := int(iovecs[i].Len)
      |                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1816:42: error: reference to field 'Base' in object which has no fields or methods
 1816 |    raceReadRange(unsafe.Pointer(iovecs[i].Base), m)
      |                                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1826:10: error: reference to undefined name 'mmap'
 1826 |  mmap:   mmap,
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1827:10: error: reference to undefined name 'munmap'
 1827 |  munmap: munmap,
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1854:26: error: reference to undefined name 'SYS_VMSPLICE'
 1854 |  n, _, errno := Syscall6(SYS_VMSPLICE, uintptr(fd), uintptr(p), uintptr(len(iovs)), uintptr(flags), 0, 0)
      |                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1865:15: error: reference to undefined name 'AT_SYMLINK_NOFOLLOW'
 1865 |  if flags & ^(AT_SYMLINK_NOFOLLOW|AT_EACCESS) != 0 {
      |               ^
../../../golang.org/x/sys/unix/syscall_linux.go:1865:35: error: reference to undefined name 'AT_EACCESS'
 1865 |  if flags & ^(AT_SYMLINK_NOFOLLOW|AT_EACCESS) != 0 {
      |                                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1866:10: error: reference to undefined name 'EINVAL'
 1866 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1876:10: error: reference to undefined name 'faccessat'
 1876 |   return faccessat(dirfd, path, mode)
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1880:12: error: reference to undefined name 'Fstatat'
 1880 |  if err := Fstatat(dirfd, path, &st, flags&AT_SYMLINK_NOFOLLOW); err != nil {
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1880:44: error: reference to undefined name 'AT_SYMLINK_NOFOLLOW'
 1880 |  if err := Fstatat(dirfd, path, &st, flags&AT_SYMLINK_NOFOLLOW); err != nil {
      |                                            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1890:11: error: reference to undefined name 'AT_EACCESS'
 1890 |  if flags&AT_EACCESS != 0 {
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1891:9: error: reference to undefined name 'Geteuid'
 1891 |   uid = Geteuid()
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1893:9: error: reference to undefined name 'Getuid'
 1893 |   uid = Getuid()
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1879:9: error: use of undefined type 'Stat_t'
 1879 |  var st Stat_t
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1901:8: error: reference to field 'Mode' in object which has no fields or methods
 1901 |   if st.Mode&0111 != 0 {
      |        ^
../../../golang.org/x/sys/unix/syscall_linux.go:1905:10: error: reference to undefined name 'EACCES'
 1905 |   return EACCES
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1909:22: error: reference to field 'Uid' in object which has no fields or methods
 1909 |  if uint32(uid) == st.Uid {
      |                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1910:14: error: reference to field 'Mode' in object which has no fields or methods
 1910 |   fmode = (st.Mode >> 6) & 7
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1913:12: error: reference to undefined name 'AT_EACCESS'
 1913 |   if flags&AT_EACCESS != 0 {
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1914:10: error: reference to undefined name 'Getegid'
 1914 |    gid = Getegid()
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1916:10: error: reference to undefined name 'Getgid'
 1916 |    gid = Getgid()
      |          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1919:23: error: reference to field 'Gid' in object which has no fields or methods
 1919 |   if uint32(gid) == st.Gid {
      |                       ^
../../../golang.org/x/sys/unix/syscall_linux.go:1920:15: error: reference to field 'Mode' in object which has no fields or methods
 1920 |    fmode = (st.Mode >> 3) & 7
      |               ^
../../../golang.org/x/sys/unix/syscall_linux.go:1922:14: error: reference to field 'Mode' in object which has no fields or methods
 1922 |    fmode = st.Mode & 7
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1930:9: error: reference to undefined name 'EACCES'
 1930 |  return EACCES
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1986:9: error: reference to undefined name 'nameToHandleAt'
 1986 |   err = nameToHandleAt(dirfd, path, fh, &mid, flags)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:1987:13: error: reference to undefined name 'EOVERFLOW'
 1987 |   if err == EOVERFLOW {
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:2006:9: error: reference to undefined name 'openByHandleAt'
 2006 |  return openByHandleAt(mountFD, handle.fileHandle, flags)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:2006:2: error: not enough arguments to return
 2006 |  return openByHandleAt(mountFD, handle.fileHandle, flags)
      |  ^
../../../golang.org/x/sys/unix/syscall_linux.go:2013:25: error: reference to undefined name 'SYS_SYSLOG'
 2013 |  _, _, errno := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(p), uintptr(arg))
      |                         ^
../../../golang.org/x/sys/unix/syscall_unix.go:42:7: error: reference to undefined name 'EAGAIN'
   42 |  case EAGAIN:
      |       ^
../../../golang.org/x/sys/unix/syscall_unix.go:44:7: error: reference to undefined name 'EINVAL'
   44 |  case EINVAL:
      |       ^
../../../golang.org/x/sys/unix/syscall_unix.go:46:7: error: reference to undefined name 'ENOENT'
   46 |  case ENOENT:
      |       ^
../../../golang.org/x/sys/unix/syscall_unix.go:54:23: error: reference to undefined name 'errorList'
   54 |  i := sort.Search(len(errorList), func(i int) bool {
      |                       ^
../../../golang.org/x/sys/unix/syscall_unix.go:57:13: error: reference to undefined name 'errorList'
   57 |  if i < len(errorList) && errorList[i].num == e {
      |             ^
../../../golang.org/x/sys/unix/syscall_unix.go:57:27: error: reference to undefined name 'errorList'
   57 |  if i < len(errorList) && errorList[i].num == e {
      |                           ^
../../../golang.org/x/sys/unix/syscall_unix.go:58:10: error: reference to undefined name 'errorList'
   58 |   return errorList[i].name
      |          ^
../../../golang.org/x/sys/unix/syscall_unix.go:55:10: error: reference to undefined name 'errorList'
   55 |   return errorList[i].num >= e
      |          ^
../../../golang.org/x/sys/unix/syscall_unix.go:65:23: error: reference to undefined name 'signalList'
   65 |  i := sort.Search(len(signalList), func(i int) bool {
      |                       ^
../../../golang.org/x/sys/unix/syscall_unix.go:68:13: error: reference to undefined name 'signalList'
   68 |  if i < len(signalList) && signalList[i].num == s {
      |             ^
../../../golang.org/x/sys/unix/syscall_unix.go:68:28: error: reference to undefined name 'signalList'
   68 |  if i < len(signalList) && signalList[i].num == s {
      |                            ^
../../../golang.org/x/sys/unix/syscall_unix.go:69:10: error: reference to undefined name 'signalList'
   69 |   return signalList[i].name
      |          ^
../../../golang.org/x/sys/unix/syscall_unix.go:66:10: error: reference to undefined name 'signalList'
   66 |   return signalList[i].num >= s
      |          ^
../../../golang.org/x/sys/unix/syscall_unix.go:80:26: error: reference to undefined name 'signalList'
   80 |   for _, signal := range signalList {
      |                          ^
../../../golang.org/x/sys/unix/syscall_unix.go:80:26: error: reference to undefined name 'signalList'
../../../golang.org/x/sys/unix/syscall_unix.go:80:3: error: range clause must have array, slice, string, map, or channel type
   80 |   for _, signal := range signalList {
      |   ^
../../../golang.org/x/sys/unix/syscall_unix.go:107:15: error: reference to undefined name 'EINVAL'
  107 |   return nil, EINVAL
      |               ^
../../../golang.org/x/sys/unix/syscall_unix.go:136:10: error: reference to undefined name 'EINVAL'
  136 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_unix.go:145:10: error: reference to undefined name 'EINVAL'
  145 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_unix.go:157:11: error: reference to undefined name 'read'
  157 |  n, err = read(fd, p)
      |           ^
../../../golang.org/x/sys/unix/syscall_unix.go:173:11: error: reference to undefined name 'write'
  173 |  n, err = write(fd, p)
      |           ^
../../../golang.org/x/sys/unix/syscall_unix.go:215:9: error: reference to undefined name 'bind'
  215 |  return bind(fd, ptr, n)
      |         ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_unix.go:223:9: error: reference to undefined name 'connect'
  223 |  return connect(fd, ptr, n)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:228:21: error: reference to undefined name 'SizeofSockaddrAny'
  228 |  var len _Socklen = SizeofSockaddrAny
      |                     ^
../../../golang.org/x/sys/unix/syscall_unix.go:229:11: error: reference to undefined name 'getpeername'
  229 |  if err = getpeername(fd, &rsa, &len); err != nil {
      |           ^
../../../golang.org/x/sys/unix/syscall_unix.go:237:12: error: reference to undefined name '_Socklen'
  237 |  vallen := _Socklen(1)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:238:8: error: reference to undefined name 'getsockopt'
  238 |  err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
      |        ^
../../../golang.org/x/sys/unix/syscall_unix.go:244:12: error: reference to undefined name '_Socklen'
  244 |  vallen := _Socklen(4)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:245:8: error: reference to undefined name 'getsockopt'
  245 |  err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
      |        ^
../../../golang.org/x/sys/unix/syscall_unix.go:250:12: error: reference to undefined name '_Socklen'
  250 |  vallen := _Socklen(4)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:251:8: error: reference to undefined name 'getsockopt'
  251 |  err = getsockopt(fd, level, opt, unsafe.Pointer(&value[0]), &vallen)
      |        ^
../../../golang.org/x/sys/unix/syscall_unix.go:257:12: error: reference to undefined name '_Socklen'
  257 |  vallen := _Socklen(SizeofIPMreq)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:257:21: error: reference to undefined name 'SizeofIPMreq'
  257 |  vallen := _Socklen(SizeofIPMreq)
      |                     ^
../../../golang.org/x/sys/unix/syscall_unix.go:258:9: error: reference to undefined name 'getsockopt'
  258 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:264:12: error: reference to undefined name '_Socklen'
  264 |  vallen := _Socklen(SizeofIPv6Mreq)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:264:21: error: reference to undefined name 'SizeofIPv6Mreq'
  264 |  vallen := _Socklen(SizeofIPv6Mreq)
      |                     ^
../../../golang.org/x/sys/unix/syscall_unix.go:265:9: error: reference to undefined name 'getsockopt'
  265 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:271:12: error: reference to undefined name '_Socklen'
  271 |  vallen := _Socklen(SizeofIPv6MTUInfo)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:271:21: error: reference to undefined name 'SizeofIPv6MTUInfo'
  271 |  vallen := _Socklen(SizeofIPv6MTUInfo)
      |                     ^
../../../golang.org/x/sys/unix/syscall_unix.go:272:9: error: reference to undefined name 'getsockopt'
  272 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:278:12: error: reference to undefined name '_Socklen'
  278 |  vallen := _Socklen(SizeofICMPv6Filter)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:278:21: error: reference to undefined name 'SizeofICMPv6Filter'
  278 |  vallen := _Socklen(SizeofICMPv6Filter)
      |                     ^
../../../golang.org/x/sys/unix/syscall_unix.go:279:9: error: reference to undefined name 'getsockopt'
  279 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:285:12: error: reference to undefined name '_Socklen'
  285 |  vallen := _Socklen(SizeofLinger)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:285:21: error: reference to undefined name 'SizeofLinger'
  285 |  vallen := _Socklen(SizeofLinger)
      |                     ^
../../../golang.org/x/sys/unix/syscall_unix.go:286:9: error: reference to undefined name 'getsockopt'
  286 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&linger), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:292:12: error: reference to undefined name '_Socklen'
  292 |  vallen := _Socklen(unsafe.Sizeof(tv))
      |            ^
../../../golang.org/x/sys/unix/syscall_linux.go:171:31: error: use of undefined type 'Timeval'
  171 | func Utimes(path string, tv []Timeval) error {
      |                               ^
../../../golang.org/x/sys/unix/syscall_unix.go:293:9: error: reference to undefined name 'getsockopt'
  293 |  err := getsockopt(fd, level, opt, unsafe.Pointer(&tv), &vallen)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:299:12: error: reference to undefined name '_Socklen'
  299 |  vallen := _Socklen(8)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:300:8: error: reference to undefined name 'getsockopt'
  300 |  err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
      |        ^
../../../golang.org/x/sys/unix/syscall_unix.go:306:21: error: reference to undefined name 'SizeofSockaddrAny'
  306 |  var len _Socklen = SizeofSockaddrAny
      |                     ^
../../../golang.org/x/sys/unix/syscall_unix.go:307:14: error: reference to undefined name 'recvfrom'
  307 |  if n, err = recvfrom(fd, p, flags, &rsa, &len); err != nil {
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:842:33: error: use of undefined type 'RawSockaddrAny'
  842 | func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
      |                                 ^
../../../golang.org/x/sys/unix/syscall_unix.go:310:8: error: reference to field 'Addr' in object which has no fields or methods
  310 |  if rsa.Addr.Family != AF_UNSPEC {
      |        ^
../../../golang.org/x/sys/unix/syscall_unix.go:310:24: error: reference to undefined name 'AF_UNSPEC'
  310 |  if rsa.Addr.Family != AF_UNSPEC {
      |                        ^
../../../golang.org/x/sys/unix/syscall_unix.go:321:9: error: reference to undefined name 'sendto'
  321 |  return sendto(fd, p, flags, ptr, n)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:325:9: error: reference to undefined name 'setsockopt'
  325 |  return setsockopt(fd, level, opt, unsafe.Pointer(&value), 1)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:330:9: error: reference to undefined name 'setsockopt'
  330 |  return setsockopt(fd, level, opt, unsafe.Pointer(&n), 4)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:334:9: error: reference to undefined name 'setsockopt'
  334 |  return setsockopt(fd, level, opt, unsafe.Pointer(&value[0]), 4)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:338:9: error: reference to undefined name 'setsockopt'
  338 |  return setsockopt(fd, level, opt, unsafe.Pointer(mreq), SizeofIPMreq)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:338:58: error: reference to undefined name 'SizeofIPMreq'
  338 |  return setsockopt(fd, level, opt, unsafe.Pointer(mreq), SizeofIPMreq)
      |                                                          ^
../../../golang.org/x/sys/unix/syscall_unix.go:342:9: error: reference to undefined name 'setsockopt'
  342 |  return setsockopt(fd, level, opt, unsafe.Pointer(mreq), SizeofIPv6Mreq)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:342:58: error: reference to undefined name 'SizeofIPv6Mreq'
  342 |  return setsockopt(fd, level, opt, unsafe.Pointer(mreq), SizeofIPv6Mreq)
      |                                                          ^
../../../golang.org/x/sys/unix/syscall_unix.go:346:9: error: reference to undefined name 'setsockopt'
  346 |  return setsockopt(fd, level, opt, unsafe.Pointer(filter), SizeofICMPv6Filter)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:346:60: error: reference to undefined name 'SizeofICMPv6Filter'
  346 |  return setsockopt(fd, level, opt, unsafe.Pointer(filter), SizeofICMPv6Filter)
      |                                                            ^
../../../golang.org/x/sys/unix/syscall_unix.go:350:9: error: reference to undefined name 'setsockopt'
  350 |  return setsockopt(fd, level, opt, unsafe.Pointer(l), SizeofLinger)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:350:55: error: reference to undefined name 'SizeofLinger'
  350 |  return setsockopt(fd, level, opt, unsafe.Pointer(l), SizeofLinger)
      |                                                       ^
../../../golang.org/x/sys/unix/syscall_unix.go:358:9: error: reference to undefined name 'setsockopt'
  358 |  return setsockopt(fd, level, opt, p, uintptr(len(s)))
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:362:9: error: reference to undefined name 'setsockopt'
  362 |  return setsockopt(fd, level, opt, unsafe.Pointer(tv), unsafe.Sizeof(*tv))
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:366:9: error: reference to undefined name 'setsockopt'
  366 |  return setsockopt(fd, level, opt, unsafe.Pointer(&value), 8)
      |         ^
../../../golang.org/x/sys/unix/syscall_unix.go:370:15: error: reference to undefined name 'AF_INET6'
  370 |  if domain == AF_INET6 && SocketDisableIPv6 {
      |               ^
../../../golang.org/x/sys/unix/syscall_unix.go:371:14: error: reference to undefined name 'EAFNOSUPPORT'
  371 |   return -1, EAFNOSUPPORT
      |              ^
../../../golang.org/x/sys/unix/syscall_unix.go:373:12: error: reference to undefined name 'socket'
  373 |  fd, err = socket(domain, typ, proto)
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:379:8: error: reference to undefined name 'socketpair'
  379 |  err = socketpair(domain, typ, proto, &fdx)
      |        ^
../../../golang.org/x/sys/unix/syscall_unix.go:389:38: error: reference to undefined name 'F_SETFD'
  389 | func CloseOnExec(fd int) { fcntl(fd, F_SETFD, FD_CLOEXEC) }
      |                                      ^
../../../golang.org/x/sys/unix/syscall_unix.go:389:47: error: reference to undefined name 'FD_CLOEXEC'
  389 | func CloseOnExec(fd int) { fcntl(fd, F_SETFD, FD_CLOEXEC) }
      |                                               ^
../../../golang.org/x/sys/unix/syscall_unix.go:392:25: error: reference to undefined name 'F_GETFL'
  392 |  flag, err := fcntl(fd, F_GETFL, 0)
      |                         ^
../../../golang.org/x/sys/unix/syscall_unix.go:397:11: error: reference to undefined name 'O_NONBLOCK'
  397 |   flag |= O_NONBLOCK
      |           ^
../../../golang.org/x/sys/unix/syscall_unix.go:399:12: error: reference to undefined name 'O_NONBLOCK'
  399 |   flag &= ^O_NONBLOCK
      |            ^
../../../golang.org/x/sys/unix/syscall_unix.go:401:21: error: reference to undefined name 'F_SETFL'
  401 |  _, err = fcntl(fd, F_SETFL, flag)
      |                     ^
../../../golang.org/x/sys/unix/syscall_unix.go:421:23: error: reference to undefined name 'AT_FDCWD'
  421 |   return UtimesNanoAt(AT_FDCWD, path, nil, AT_SYMLINK_NOFOLLOW)
      |                       ^
../../../golang.org/x/sys/unix/syscall_unix.go:421:44: error: reference to undefined name 'AT_SYMLINK_NOFOLLOW'
  421 |   return UtimesNanoAt(AT_FDCWD, path, nil, AT_SYMLINK_NOFOLLOW)
      |                                            ^
../../../golang.org/x/sys/unix/syscall_unix.go:424:10: error: reference to undefined name 'EINVAL'
  424 |   return EINVAL
      |          ^
../../../golang.org/x/sys/unix/syscall_unix.go:430:22: error: reference to undefined name 'AT_FDCWD'
  430 |  return UtimesNanoAt(AT_FDCWD, path, ts, AT_SYMLINK_NOFOLLOW)
      |                      ^
../../../golang.org/x/sys/unix/syscall_unix.go:430:42: error: reference to undefined name 'AT_SYMLINK_NOFOLLOW'
  430 |  return UtimesNanoAt(AT_FDCWD, path, ts, AT_SYMLINK_NOFOLLOW)
      |                                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:138:35: error: use of undefined type 'Timespec'
  138 | func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
      |                                   ^
../../../golang.org/x/sys/unix/timestruct.go:13:57: error: reference to field 'Sec' in object which has no fields or methods
   13 | func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
      |                                                         ^
../../../golang.org/x/sys/unix/timestruct.go:13:77: error: reference to field 'Nsec' in object which has no fields or methods
   13 | func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
      |                                                                             ^
../../../golang.org/x/sys/unix/timestruct.go:24:9: error: reference to undefined name 'setTimespec'
   24 |  return setTimespec(sec, nsec)
      |         ^
../../../golang.org/x/sys/unix/timestruct.go:34:8: error: reference to undefined name 'setTimespec'
   34 |  ts := setTimespec(sec, nsec)
      |        ^
../../../golang.org/x/sys/unix/timestruct.go:40:22: error: reference to undefined name 'ERANGE'
   40 |   return Timespec{}, ERANGE
      |                      ^
../../../golang.org/x/sys/unix/timestruct.go:47:55: error: reference to field 'Sec' in object which has no fields or methods
   47 | func TimevalToNsec(tv Timeval) int64 { return int64(tv.Sec)*1e9 + int64(tv.Usec)*1e3 }
      |                                                       ^
../../../golang.org/x/sys/unix/timestruct.go:47:75: error: reference to field 'Usec' in object which has no fields or methods
   47 | func TimevalToNsec(tv Timeval) int64 { return int64(tv.Sec)*1e9 + int64(tv.Usec)*1e3 }
      |                                                                           ^
../../../golang.org/x/sys/unix/timestruct.go:59:9: error: reference to undefined name 'setTimeval'
   59 |  return setTimeval(sec, usec)
      |         ^
../../../golang.org/x/sys/unix/timestruct.go:65:17: error: reference to field 'Sec' in object which has no fields or methods
   65 |  return int64(ts.Sec), int64(ts.Nsec)
      |                 ^
../../../golang.org/x/sys/unix/timestruct.go:65:32: error: reference to field 'Nsec' in object which has no fields or methods
   65 |  return int64(ts.Sec), int64(ts.Nsec)
      |                                ^
../../../golang.org/x/sys/unix/timestruct.go:71:17: error: reference to field 'Sec' in object which has no fields or methods
   71 |  return int64(tv.Sec), int64(tv.Usec) * 1000
      |                 ^
../../../golang.org/x/sys/unix/timestruct.go:71:32: error: reference to field 'Usec' in object which has no fields or methods
   71 |  return int64(tv.Sec), int64(tv.Usec) * 1000
      |                                ^
../../../golang.org/x/sys/unix/timestruct.go:76:17: error: reference to field 'Sec' in object which has no fields or methods
   76 |  return int64(ts.Sec)*1e9 + int64(ts.Nsec)
      |                 ^
../../../golang.org/x/sys/unix/timestruct.go:76:37: error: reference to field 'Nsec' in object which has no fields or methods
   76 |  return int64(ts.Sec)*1e9 + int64(ts.Nsec)
      |                                     ^
../../../golang.org/x/sys/unix/timestruct.go:81:17: error: reference to field 'Sec' in object which has no fields or methods
   81 |  return int64(tv.Sec)*1e9 + int64(tv.Usec)*1000
      |                 ^
../../../golang.org/x/sys/unix/timestruct.go:81:37: error: reference to field 'Usec' in object which has no fields or methods
   81 |  return int64(tv.Sec)*1e9 + int64(tv.Usec)*1000
      |                                     ^
../../../golang.org/x/sys/unix/fcntl.go:30:42: error: use of undefined type 'Flock_t'
   30 | func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error {
      |                                          ^
../../../golang.org/x/sys/unix/ioctl.go:26:47: error: use of undefined type 'Winsize'
   26 | func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
      |                                               ^
../../../golang.org/x/sys/unix/ioctl.go:37:47: error: use of undefined type 'Termios'
   37 | func IoctlSetTermios(fd int, req uint, value *Termios) error {
      |                                               ^
../../../golang.org/x/sys/unix/ioctl.go:26:47: error: use of undefined type 'Winsize'
   26 | func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
      |                                               ^
../../../golang.org/x/sys/unix/ioctl.go:26:47: error: use of undefined type 'Winsize'
../../../golang.org/x/sys/unix/ioctl.go:37:47: error: use of undefined type 'Termios'
   37 | func IoctlSetTermios(fd int, req uint, value *Termios) error {
      |                                               ^
../../../golang.org/x/sys/unix/ioctl.go:37:47: error: use of undefined type 'Termios'
../../../golang.org/x/sys/unix/sockcmsg_linux.go:14:29: error: use of undefined type 'Ucred'
   14 | func UnixCredentials(ucred *Ucred) []byte {
      |                             ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:14:29: error: use of undefined type 'Ucred'
../../../golang.org/x/sys/unix/syscall_linux.go:94:37: error: use of undefined type 'RTCTime'
   94 | func IoctlSetRTCTime(fd int, value *RTCTime) error {
      |                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:94:37: error: use of undefined type 'RTCTime'
../../../golang.org/x/sys/unix/syscall_linux.go:94:37: error: use of undefined type 'RTCTime'
../../../golang.org/x/sys/unix/syscall_linux.go:138:18: error: use of undefined type 'PollFd'
  138 | func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:138:54: error: use of undefined type 'Sigset_t'
  138 | func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:275:14: error: use of undefined type '_Gid_t'
  275 |  a := make([]_Gid_t, n)
      |              ^
../../../golang.org/x/sys/unix/syscall_linux.go:358:63: error: use of undefined type 'Rusage'
  358 | func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int, err error) {
      |                                                               ^
../../../golang.org/x/sys/unix/syscall_linux.go:359:13: error: use of undefined type '_C_int'
  359 |  var status _C_int
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:807:27: error: array bound is not constant
  807 |  copy(out[:], (*(*[unsafe.Sizeof(TIPCSocketAddr{})]byte)(unsafe.Pointer(sa)))[:])
      |                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:815:27: error: array bound is not constant
  815 |  copy(out[:], (*(*[unsafe.Sizeof(TIPCServiceRange{})]byte)(unsafe.Pointer(sa)))[:])
      |                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:823:27: error: array bound is not constant
  823 |  copy(out[:], (*(*[unsafe.Sizeof(TIPCServiceName{})]byte)(unsafe.Pointer(sa)))[:])
      |                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:842:33: error: use of undefined type 'RawSockaddrAny'
  842 | func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
      |                                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:842:33: error: use of undefined type 'RawSockaddrAny'
  842 | func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
      |                                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:842:33: error: use of undefined type 'RawSockaddrAny'
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1035:46: error: use of undefined type 'IPMreqn'
 1035 | func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
      |                                              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1035:46: error: use of undefined type 'IPMreqn'
../../../golang.org/x/sys/unix/sockcmsg_linux.go:14:29: error: use of undefined type 'Ucred'
   14 | func UnixCredentials(ucred *Ucred) []byte {
      |                             ^
../../../golang.org/x/sys/unix/sockcmsg_linux.go:14:29: error: use of undefined type 'Ucred'
../../../golang.org/x/sys/unix/syscall_linux.go:1049:46: error: use of undefined type 'TCPInfo'
 1049 | func GetsockoptTCPInfo(fd, level, opt int) (*TCPInfo, error) {
      |                                              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1049:46: error: use of undefined type 'TCPInfo'
../../../golang.org/x/sys/unix/syscall_linux.go:1074:51: error: use of undefined type 'TpacketStats'
 1074 | func GetsockoptTpacketStats(fd, level, opt int) (*TpacketStats, error) {
      |                                                   ^
../../../golang.org/x/sys/unix/syscall_linux.go:1074:51: error: use of undefined type 'TpacketStats'
../../../golang.org/x/sys/unix/syscall_linux.go:1081:53: error: use of undefined type 'TpacketStatsV3'
 1081 | func GetsockoptTpacketStatsV3(fd, level, opt int) (*TpacketStatsV3, error) {
      |                                                     ^
../../../golang.org/x/sys/unix/syscall_linux.go:1081:53: error: use of undefined type 'TpacketStatsV3'
../../../golang.org/x/sys/unix/syscall_linux.go:1102:58: error: use of undefined type 'CanFilter'
 1102 | func SetsockoptCanRawFilter(fd, level, opt int, filter []CanFilter) error {
      |                                                          ^
../../../golang.org/x/sys/unix/syscall_linux.go:1206:45: error: use of undefined type 'Iovec'
 1206 | func KeyctlInstantiateIOV(id int, payload []Iovec, ringid int) error {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1221:30: error: use of undefined type 'KeyctlDHParams'
 1221 | func KeyctlDHCompute(params *KeyctlDHParams, buffer []byte) (size int, err error) {
      |                              ^
../../../golang.org/x/sys/unix/syscall_linux.go:1467:38: error: use of undefined type 'PtraceRegs'
 1467 | func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
      |                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1467:38: error: use of undefined type 'PtraceRegs'
../../../golang.org/x/sys/unix/syscall_linux.go:1480:11: error: use of undefined type '_C_long'
 1480 |  var data _C_long
      |           ^
../../../golang.org/x/sys/unix/syscall_linux.go:138:54: error: use of undefined type 'Sigset_t'
  138 | func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_linux.go:1206:45: error: use of undefined type 'Iovec'
 1206 | func KeyctlInstantiateIOV(id int, payload []Iovec, ringid int) error {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_linux.go:1206:45: error: use of undefined type 'Iovec'
../../../golang.org/x/sys/unix/syscall_linux.go:359:13: error: use of undefined type '_C_int'
  359 |  var status _C_int
      |             ^
../../../golang.org/x/sys/unix/syscall_linux.go:842:33: error: use of undefined type 'RawSockaddrAny'
  842 | func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
      |                                 ^
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_unix.go:255:45: error: use of undefined type 'IPMreq'
  255 | func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_unix.go:255:45: error: use of undefined type 'IPMreq'
../../../golang.org/x/sys/unix/syscall_unix.go:262:47: error: use of undefined type 'IPv6Mreq'
  262 | func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) {
      |                                               ^
../../../golang.org/x/sys/unix/syscall_unix.go:262:47: error: use of undefined type 'IPv6Mreq'
../../../golang.org/x/sys/unix/syscall_unix.go:269:50: error: use of undefined type 'IPv6MTUInfo'
  269 | func GetsockoptIPv6MTUInfo(fd, level, opt int) (*IPv6MTUInfo, error) {
      |                                                  ^
../../../golang.org/x/sys/unix/syscall_unix.go:269:50: error: use of undefined type 'IPv6MTUInfo'
../../../golang.org/x/sys/unix/syscall_unix.go:276:51: error: use of undefined type 'ICMPv6Filter'
  276 | func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) {
      |                                                   ^
../../../golang.org/x/sys/unix/syscall_unix.go:276:51: error: use of undefined type 'ICMPv6Filter'
../../../golang.org/x/sys/unix/syscall_unix.go:283:45: error: use of undefined type 'Linger'
  283 | func GetsockoptLinger(fd, level, opt int) (*Linger, error) {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_unix.go:283:45: error: use of undefined type 'Linger'
../../../golang.org/x/sys/unix/syscall_linux.go:375:54: error: use of undefined type '_Socklen'
  375 | func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
      |                                                      ^
../../../golang.org/x/sys/unix/syscall_unix.go:255:45: error: use of undefined type 'IPMreq'
  255 | func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) {
      |                                             ^
../../../golang.org/x/sys/unix/syscall_unix.go:262:47: error: use of undefined type 'IPv6Mreq'
  262 | func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) {
      |                                               ^
../../../golang.org/x/sys/unix/syscall_unix.go:276:51: error: use of undefined type 'ICMPv6Filter'
  276 | func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) {
      |                                                   ^
../../../golang.org/x/sys/unix/syscall_unix.go:283:45: error: use of undefined type 'Linger'
  283 | func GetsockoptLinger(fd, level, opt int) (*Linger, error) {
      |                                             ^
../../../golang.org/x/sys/unix/fdset.go:11:29: error: invalid context-determined non-integer type for left operand of shift
   11 |  fds.Bits[fd/NFDBITS] |= (1 << (uintptr(fd) % NFDBITS))
      |                             ^
../../../golang.org/x/sys/unix/fdset.go:16:30: error: invalid context-determined non-integer type for left operand of shift
   16 |  fds.Bits[fd/NFDBITS] &^= (1 << (uintptr(fd) % NFDBITS))
      |                              ^
../../../golang.org/x/sys/unix/fdset.go:26:6: error: invalid type for range clause
   26 |  for i := range fds.Bits {
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:281:6: error: invalid type for range clause
  281 |  for i, v := range a[0:n] {
      |      ^
../../../golang.org/x/sys/unix/syscall_linux.go:281:6: error: invalid type for range clause
../../../golang.org/x/sys/unix/syscall_unix.go:80:7: error: invalid type for range clause
   80 |   for _, signal := range signalList {
      |       ^
../../../golang.org/x/sys/unix/dirent.go:81:18: error: expression is not constant
   81 |   const namoff = uint64(unsafe.Offsetof(Dirent{}.Name))
      |                  ^
../../../golang.org/x/sys/unix/syscall_linux.go:1368:75: error: array index out of bounds
 1368 |   err = ptrace(req, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
      |                                                                           ^
../../../golang.org/x/sys/unix/syscall_linux.go:1380:71: error: array index out of bounds
 1380 |   err = ptrace(req, pid, addr+uintptr(n), uintptr(unsafe.Pointer(&buf[0])))
      |                                                                       ^
../../../golang.org/x/sys/unix/syscall_linux.go:1417:44: error: array index out of bounds
 1417 |   word := *((*uintptr)(unsafe.Pointer(&buf[0])))
      |                                            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1412:79: error: array index out of bounds
 1412 |   err = ptrace(peekReq, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
      |                                                                               ^
../../../golang.org/x/sys/unix/syscall_linux.go:1444:44: error: array index out of bounds
 1444 |   word := *((*uintptr)(unsafe.Pointer(&buf[0])))
      |                                            ^
../../../golang.org/x/sys/unix/syscall_linux.go:1439:75: error: array index out of bounds
 1439 |   err = ptrace(peekReq, pid, addr+uintptr(n), uintptr(unsafe.Pointer(&buf[0])))
      |                                                                           ^
(null):0: confused by earlier errors, bailing out

As ppc (32 bit) is supported by gccgo it would be useful to have support in x/sys/unix as "syscall" is deprecated.

cagedmantis commented 4 years ago

/cc @ianlancetaylor @bradfitz @tklauser

gopherbot commented 3 years ago

Change https://golang.org/cl/260657 mentions this issue: cmd/cgo: add more architectures to size maps

gopherbot commented 3 years ago

Change https://golang.org/cl/260702 mentions this issue: [release-branch.go1.15] cmd/cgo: add more architectures to size maps

gopherbot commented 3 years ago

Change https://golang.org/cl/262517 mentions this issue: x/sys/unix: add linux/ppc support, for use with gccgo

gopherbot commented 3 years ago

Change https://golang.org/cl/270317 mentions this issue: unix: define isBigEndian for all GOARCHes supported by gccgo

gopherbot commented 3 years ago

Change https://golang.org/cl/312349 mentions this issue: unix/linux: add ppc system call definitions, for use with gccgo