https://gcc.gnu.org/g:284e13279e8c8067f7a0046a7ca8ff7a16398feb
commit r16-2113-g284e13279e8c8067f7a0046a7ca8ff7a16398feb Author: Ian Lance Taylor <i...@golang.org> Date: Mon Jun 30 21:23:41 2025 -0700 syscall: pass correct pointer to system call in recvmsgRaw The code in recvmsgRaw, introduced in https://go.dev/cl/384695, incorrectly passed &rsa to the recvmsg system call. But in recvmsgRaw rsa is already a pointer passed by the caller. This change passes the correct pointer. I'm guessing that this didn't show up in the testsuite because we run the tests in short mode. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/685177 Diff: --- gcc/go/gofrontend/MERGE | 2 +- libgo/go/syscall/socket.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index b6fdf72dcec4..64eb27e5e8d1 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -f5c453aa726ebb509e7b8cb20df7734f0e411404 +8aab4c94f039132b270ab03968f74d24d315e141 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/libgo/go/syscall/socket.go b/libgo/go/syscall/socket.go index 54a4a9940c64..35665d507232 100644 --- a/libgo/go/syscall/socket.go +++ b/libgo/go/syscall/socket.go @@ -467,7 +467,7 @@ func Sendto(fd int, p []byte, flags int, to Sockaddr) (err error) { func recvmsgRaw(fd int, p, oob []byte, flags int, rsa *RawSockaddrAny) (n, oobn int, recvflags int, err error) { var msg Msghdr - msg.Name = (*byte)(unsafe.Pointer(&rsa)) + msg.Name = (*byte)(unsafe.Pointer(rsa)) msg.Namelen = uint32(SizeofSockaddrAny) var iov Iovec if len(p) > 0 {