You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Current go master (Go 1.12) broke the use of in-package syso files (broken by https://golang.org/cl/146297) with names shorter than 12 byte (because
the limitation on filename length, even though race detector relies on syso,
it is not broken by the CL.)
As a short reproduction, run the following shell script under $GOPATH/src:
#!/bin/bashset -ex
mkdir issue
cd issue
cat <<EOF > ext.c// +build ignoreint f(int x) { return x * 2; }EOF
cat <<EOF > pkg.gopackage issue// extern int f(int);import "C"func init() { println(C.f(42))}EOF
cat <<EOF > main.go// +build ignorepackage mainimport _ "issue"func main() {}EOF
cc -c -fPIC -o ext.syso ext.c
go run main.go
Because Go 1.12 cmd/link no longer passes the bundled syso to the external linker,
the final go run will fail to build the executable due to missing f symbol.
This is a Go 1.12 regression, so labelling it as release-broker.
The text was updated successfully, but these errors were encountered:
Current go master (Go 1.12) broke the use of in-package syso files (broken by https://golang.org/cl/146297) with names shorter than 12 byte (because
the limitation on filename length, even though race detector relies on syso,
it is not broken by the CL.)
As a short reproduction, run the following shell script under
$GOPATH/src
:Because Go 1.12 cmd/link no longer passes the bundled syso to the external linker,
the final
go run
will fail to build the executable due to missingf
symbol.This is a Go 1.12 regression, so labelling it as release-broker.
The text was updated successfully, but these errors were encountered: