Go version
devel go1.23-95a3779ebc linux/amd64
Output of go env
in your module/workspace:
GO111MODULE=''
GOARCH='amd64'
GOBIN=''
GOCACHE='/home/iant/.cache/go-build'
GOENV='/home/iant/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/home/iant/gopath/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/iant/gopath'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org'
GOROOT='/home/iant/go'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/home/iant/go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='devel go1.23-95a3779ebc Thu May 9 22:12:20 2024 +0000'
GODEBUG=''
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build927346917=/tmp/go-build -gno-record-gcc-switches'
What did you do?
https://go.dev/cl/583755 removed the ifaceIndir
function from the reflect package. Unfortunately, ifaceIndir
is accessed using go:linkname
by the popular github.com/goccy/go-json package. A bug has been filed to fix this upstream: https://github.com/goccy/go-json/issues/506. Until that bug is fixed and the fix is distributed, we need to keep ifaceIndir
available.
I'm filing this bug so that we remember to remove it. With luck we can remove this in the 1.24 release. Marking as a release blocker to make sure we consider it for 1.24.
What did you see happen?
ifaceIndir
present.
What did you expect to see?
No ifaceIndir
.
Comment From: gopherbot
Change https://go.dev/cl/584676 mentions this issue: reflect: restore ifaceIndir function for now
Comment From: rsc
I think we can close this issue as done. We've documented why ifaceIndir needs to stay, as part of #67401.