From: Cuong Manh Le Date: Sat, 7 Nov 2020 05:03:36 +0000 (+0700) Subject: cmd/link: fix invalid usage of reflect.SliceHeader X-Git-Tag: go1.16beta1~296 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=2c80de74d57de74cc50ba7195392cada4e9c3ea2;p=gostls13.git cmd/link: fix invalid usage of reflect.SliceHeader Caught by "go vet" built with golang.org/cl/248192. Change-Id: I446083533dd82ecef8db591beb7bd3d70b040d4a Reviewed-on: https://go-review.googlesource.com/c/go/+/268099 Trust: Cuong Manh Le Run-TryBot: Cuong Manh Le TryBot-Result: Go Bot Reviewed-by: Ian Lance Taylor Reviewed-by: Cherry Zhang --- diff --git a/src/cmd/link/internal/ld/outbuf_windows.go b/src/cmd/link/internal/ld/outbuf_windows.go index 60dc1ab92d..915c72bef3 100644 --- a/src/cmd/link/internal/ld/outbuf_windows.go +++ b/src/cmd/link/internal/ld/outbuf_windows.go @@ -35,7 +35,10 @@ func (out *OutBuf) Mmap(filesize uint64) error { if err != nil { return err } - *(*reflect.SliceHeader)(unsafe.Pointer(&out.buf)) = reflect.SliceHeader{Data: ptr, Len: int(filesize), Cap: int(filesize)} + bufHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.buf)) + bufHdr.Data = ptr + bufHdr.Len = int(filesize) + bufHdr.Cap = int(filesize) // copy heap to new mapping if uint64(oldlen+len(out.heap)) > filesize {