Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/go: go build -race -n escapes $WORK incorrectly #37012

Closed
dfava opened this issue Feb 4, 2020 · 7 comments
Closed

cmd/go: go build -race -n escapes $WORK incorrectly #37012

dfava opened this issue Feb 4, 2020 · 7 comments
Labels
FrozenDueToAge help wanted NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@dfava
Copy link
Contributor

dfava commented Feb 4, 2020

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

$ go version
go version go1.13.5 darwin/amd64

Does this issue reproduce with the latest release?

go build -race -n produces no output in the latest release.

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

go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/danielsf/Library/Caches/go-build"
GOENV="/Users/danielsf/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/danielsf/Dropbox/edu/uio.no/favasynthesis/src/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/Cellar/go/1.13.5/libexec"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
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 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/rq/c7265gd14vlc3gzwwn9prm5h0000gn/T/go-build781677843=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

I ran go build -race -n file.go

$go build -race -n sortnp.go

runtime/race

mkdir -p $WORK/b017/
cd /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race
CGO_LDFLAGS='"-g" "-O2"' /usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/cgo -objdir $WORK/b017/ -importpath runtime/race -import_syscall=false -- -I $WORK/b017/ -g -O2 ./race.go
cd $WORK
clang -fno-caret-diagnostics -c -x c - -o /dev/null || true
clang -Qunused-arguments -c -x c - -o /dev/null || true
clang -fdebug-prefix-map=a=b -c -x c - -o /dev/null || true
clang -gno-record-gcc-switches -c -x c - -o /dev/null || true
cd $WORK/b017
TERM='dumb' clang -I /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race -fPIC -m64 -pthread -fmessage-length=0 -fno-common -I ./ -g -O2 -o /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race/$WORK/b017/_x001.o -c _cgo_export.c
cd $WORK
clang -fno-caret-diagnostics -c -x c - -o /dev/null || true
clang -Qunused-arguments -c -x c - -o /dev/null || true
clang -fdebug-prefix-map=a=b -c -x c - -o /dev/null || true
clang -gno-record-gcc-switches -c -x c - -o /dev/null || true
cd $WORK/b017
TERM='dumb' clang -I /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race -fPIC -m64 -pthread -fmessage-length=0 -fno-common -I ./ -g -O2 -o /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race/$WORK/b017/_x002.o -c race.cgo2.c
cd $WORK
clang -fno-caret-diagnostics -c -x c - -o /dev/null || true
clang -Qunused-arguments -c -x c - -o /dev/null || true
clang -fdebug-prefix-map=a=b -c -x c - -o /dev/null || true
clang -gno-record-gcc-switches -c -x c - -o /dev/null || true
cd $WORK/b017
TERM='dumb' clang -I /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race -fPIC -m64 -pthread -fmessage-length=0 -fno-common -I ./ -g -O2 -o /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race/$WORK/b017/_cgo_main.o -c _cgo_main.c
cd $WORK
clang -fno-caret-diagnostics -c -x c - -o /dev/null || true
clang -Qunused-arguments -c -x c - -o /dev/null || true
clang -fdebug-prefix-map=a=b -c -x c - -o /dev/null || true
clang -gno-record-gcc-switches -c -x c - -o /dev/null || true
cd /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race
TERM='dumb' clang -I . -fPIC -m64 -pthread -fmessage-length=0 -fno-common -o $WORK/b017/cgo.o $WORK/b017/_cgo_main.o $WORK/b017/_x001.o $WORK/b017/_x002.o race_darwin_amd64.syso -g -O2
TERM='dumb' /usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/cgo -dynpackage race -dynimport $WORK/b017/cgo.o -dynout $WORK/b017/_cgo_import.go
cat >$WORK/b017/importcfg << 'EOF' # internal

import config

packagefile runtime/cgo=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/runtime/cgo.a
EOF
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/compile -o $WORK/b017/pkg.a -trimpath "$WORK/b017=>" -race -p runtime/race -std -installsuffix race -buildid Fprz1Z1KPcZIX5FOwJQI/Fprz1Z1KPcZIX5FOwJQI -goversion go1.13.5 -D "" -importcfg $WORK/b017/importcfg -pack ./doc.go $WORK/b017/_cgo_gotypes.go $WORK/b017/race.cgo1.go $WORK/b017/_cgo_import.go
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/pack r $WORK/b017/pkg.a $WORK/b017/_x001.o $WORK/b017/_x002.o ./race_darwin_amd64.syso # internal
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/buildid -w $WORK/b017/pkg.a # internal

command-line-arguments

mkdir -p $WORK/b001/
cat >$WORK/b001/importcfg << 'EOF' # internal

import config

packagefile math/rand=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/math/rand.a
packagefile sort=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/sort.a
packagefile runtime=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/runtime.a
packagefile runtime/race=$WORK/b017/pkg.a
EOF
cd /Users/danielsf/Dropbox/edu/uio.no/favasynthesis/src/go/src
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/compile -o $WORK/b001/pkg.a -trimpath "$WORK/b001=>" -race -p main -complete -installsuffix race -buildid bFDuKt7LerJobydFWkD4/bFDuKt7LerJobydFWkD4 -goversion go1.13.5 -D _/Users/danielsf/Dropbox/edu/uio.no/favasynthesis/src/go/src -importcfg $WORK/b001/importcfg -pack ./sortnp.go
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/buildid -w $WORK/b001/pkg.a # internal
cat >$WORK/b001/importcfg.link << 'EOF' # internal
packagefile command-line-arguments=$WORK/b001/pkg.a
packagefile math/rand=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/math/rand.a
packagefile sort=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/sort.a
packagefile runtime=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/runtime.a
packagefile runtime/race=$WORK/b017/pkg.a
packagefile math=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/math.a
packagefile sync=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/sync.a
packagefile internal/reflectlite=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/internal/reflectlite.a
packagefile internal/bytealg=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/internal/bytealg.a
packagefile internal/cpu=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/internal/cpu.a
packagefile runtime/internal/atomic=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/runtime/internal/atomic.a
packagefile runtime/internal/math=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/runtime/internal/math.a
packagefile runtime/internal/sys=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/runtime/internal/sys.a
packagefile runtime/cgo=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/runtime/cgo.a
packagefile math/bits=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/math/bits.a
packagefile internal/race=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/internal/race.a
packagefile sync/atomic=/usr/local/Cellar/go/1.13.5/libexec/pkg/darwin_amd64_race/sync/atomic.a
EOF
mkdir -p $WORK/b001/exe/
cd .
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/link -o $WORK/b001/exe/a.out -importcfg $WORK/b001/importcfg.link -installsuffix race -buildmode=exe -buildid=ccVR6c_rQZXbuQvRXvvQ/bFDuKt7LerJobydFWkD4/bFDuKt7LerJobydFWkD4/ccVR6c_rQZXbuQvRXvvQ -race -extld=clang $WORK/b001/pkg.a
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/buildid -w $WORK/b001/exe/a.out # internal
mv $WORK/b001/exe/a.out sortnp

What did you expect to see? / What did you see instead?

The output from go build -race -n file.go seems slightly incorrect.
Take the following line for example. I believe the tool ought to have printed $WORK/b017/ instead of /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race/$WORK/b017/.

TERM='dumb' clang -I /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race -fPIC -m64 -pthread -fmessage-length=0 -fno-common -I ./ -g -O2 -o /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race/$WORK/b017/_x001.o -c _cgo_export.c

I'm assuming that $WORK is a full path. It could also be that $WORK is a relative path from /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race. If that's the case, then the following lines would break, since $WORK is a relative path that is now referenced from /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race instead of /usr/local/Cellar/go/1.13.5/libexec/src/runtime/race:

cd /Users/danielsf/Dropbox/edu/uio.no/favasynthesis/src/go/src
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/compile -o $WORK/b001/_pkg_.a -trimpath "$WORK/b001=>" -race -p main -complete -installsuffix race -buildid bFDuKt7LerJobydFWkD4/bFDuKt7LerJobydFWkD4 -goversion go1.13.5 -D _/Users/danielsf/Dropbox/edu/uio.no/favasynthesis/src/go/src -importcfg $WORK/b001/importcfg -pack ./sortnp.go
/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64/buildid -w $WORK/b001/_pkg_.a # internal
@bcmills
Copy link
Contributor

bcmills commented Feb 4, 2020

This may be fixed (or at least changed) by CL 210937. Please try go1.14beta1 and see if the issue still reproduces.

@bcmills bcmills changed the title cmd/build: go build -race -n produces incorrect paths cmd/go: go build -race -n escapes $WORK incorrectly Feb 4, 2020
@bcmills bcmills added the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Feb 4, 2020
@bcmills
Copy link
Contributor

bcmills commented Feb 4, 2020

Actually, I think I see a related bug in (*Builder).showOutput.

@bcmills bcmills added NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. and removed WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. labels Feb 4, 2020
@bcmills bcmills added this to the Go1.15 milestone Feb 4, 2020
@bcmills
Copy link
Contributor

bcmills commented Feb 4, 2020

Didn't actually see the bug, but I do see the symptom with a build from head.
The constant $WORK likely comes from here:

b.WorkDir = "$WORK"

The funky paths are probably coming from here:

if filepath.IsAbs(f) || strings.HasPrefix(f, "$WORK") {
return f
}
return filepath.Join(dir, f)

@bcmills bcmills modified the milestones: Go1.15, Backlog Feb 4, 2020
@bcmills
Copy link
Contributor

bcmills commented Feb 4, 2020

CC @jayconrod @matloob

@GrigoriyMikhalkin
Copy link
Contributor

GrigoriyMikhalkin commented Feb 16, 2020

Here is reason why we getting such paths:

if !filepath.IsAbs(outfile) {

We could instead use mkAbs, so it would produce paths like ./_x001.o. Just tested go build -race -n locally, it seems like this change of paths doesn't break anything:

Output

#
# runtime/race
#

mkdir -p $WORK/b031/
cd /Users/grigoriy.mihalkin/Projects/go/src/runtime/race
CGO_LDFLAGS='"-g" "-O2"' /Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/cgo -objdir $WORK/b031/ -importpath runtime/race -import_syscall=false -- -I $WORK/b031/ -g -O2 ./race.go
cd $WORK
clang -fno-caret-diagnostics -c -x c - -o /dev/null || true
clang -Qunused-arguments -c -x c - -o /dev/null || true
clang -fdebug-prefix-map=a=b -c -x c - -o /dev/null || true
clang -gno-record-gcc-switches -c -x c - -o /dev/null || true
OUT:  $WORK/b031/_x001.o
cd $WORK/b031
TERM='dumb' clang -I /Users/grigoriy.mihalkin/Projects/go/src/runtime/race -fPIC -m64 -pthread -fmessage-length=0 -fno-common -I ./ -g -O2 -o ./_x001.o -c _cgo_export.c
cd $WORK
clang -fno-caret-diagnostics -c -x c - -o /dev/null || true
clang -Qunused-arguments -c -x c - -o /dev/null || true
clang -fdebug-prefix-map=a=b -c -x c - -o /dev/null || true
clang -gno-record-gcc-switches -c -x c - -o /dev/null || true
OUT:  $WORK/b031/_x002.o
cd $WORK/b031
TERM='dumb' clang -I /Users/grigoriy.mihalkin/Projects/go/src/runtime/race -fPIC -m64 -pthread -fmessage-length=0 -fno-common -I ./ -g -O2 -o ./_x002.o -c race.cgo2.c
cd $WORK
clang -fno-caret-diagnostics -c -x c - -o /dev/null || true
clang -Qunused-arguments -c -x c - -o /dev/null || true
clang -fdebug-prefix-map=a=b -c -x c - -o /dev/null || true
clang -gno-record-gcc-switches -c -x c - -o /dev/null || true
OUT:  $WORK/b031/_cgo_main.o
cd $WORK/b031
TERM='dumb' clang -I /Users/grigoriy.mihalkin/Projects/go/src/runtime/race -fPIC -m64 -pthread -fmessage-length=0 -fno-common -I ./ -g -O2 -o ./_cgo_main.o -c _cgo_main.c
cd $WORK
clang -fno-caret-diagnostics -c -x c - -o /dev/null || true
clang -Qunused-arguments -c -x c - -o /dev/null || true
clang -fdebug-prefix-map=a=b -c -x c - -o /dev/null || true
clang -gno-record-gcc-switches -c -x c - -o /dev/null || true
cd /Users/grigoriy.mihalkin/Projects/go/src/runtime/race
TERM='dumb' clang -I . -fPIC -m64 -pthread -fmessage-length=0 -fno-common -o $WORK/b031/_cgo_.o $WORK/b031/_cgo_main.o $WORK/b031/_x001.o $WORK/b031/_x002.o race_darwin_amd64.syso -g -O2
TERM='dumb' /Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/cgo -dynpackage race -dynimport $WORK/b031/_cgo_.o -dynout $WORK/b031/_cgo_import.go
cat >$WORK/b031/importcfg << 'EOF' # internal
# import config
packagefile runtime/cgo=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/runtime/cgo.a
EOF
/Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/compile -o $WORK/b031/_pkg_.a -trimpath "$WORK/b031=>" -race -p runtime/race -std -installsuffix race -buildid j5vTSDP92B_Tnz_iZhm7/j5vTSDP92B_Tnz_iZhm7 -D "" -importcfg $WORK/b031/importcfg -pack ./doc.go $WORK/b031/_cgo_gotypes.go $WORK/b031/race.cgo1.go $WORK/b031/_cgo_import.go
/Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/pack r $WORK/b031/_pkg_.a $WORK/b031/_x001.o $WORK/b031/_x002.o ./race_darwin_amd64.syso # internal
/Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/buildid -w $WORK/b031/_pkg_.a # internal

#
# command-line-arguments
#

mkdir -p $WORK/b001/
cat >$WORK/b001/importcfg << 'EOF' # internal
# import config
packagefile fmt=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/fmt.a
packagefile runtime=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/runtime.a
packagefile runtime/race=$WORK/b031/_pkg_.a
EOF
cd /Users/grigoriy.mihalkin/Projects/t
/Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/compile -o $WORK/b001/_pkg_.a -trimpath "$WORK/b001=>" -race -p main -complete -installsuffix race -buildid fGZftERV3A-zKCGGaq20/fGZftERV3A-zKCGGaq20 -D _/Users/grigoriy.mihalkin/Projects/t -importcfg $WORK/b001/importcfg -pack ./main.go
/Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/buildid -w $WORK/b001/_pkg_.a # internal
cat >$WORK/b001/importcfg.link << 'EOF' # internal
packagefile command-line-arguments=$WORK/b001/_pkg_.a
packagefile fmt=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/fmt.a
packagefile runtime=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/runtime.a
packagefile runtime/race=$WORK/b031/_pkg_.a
packagefile errors=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/errors.a
packagefile internal/fmtsort=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/fmtsort.a
packagefile io=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/io.a
packagefile math=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/math.a
packagefile os=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/os.a
packagefile reflect=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/reflect.a
packagefile strconv=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/strconv.a
packagefile sync=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/sync.a
packagefile unicode/utf8=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/unicode/utf8.a
packagefile internal/bytealg=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/bytealg.a
packagefile internal/cpu=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/cpu.a
packagefile runtime/internal/atomic=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/runtime/internal/atomic.a
packagefile runtime/internal/math=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/runtime/internal/math.a
packagefile runtime/internal/sys=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/runtime/internal/sys.a
packagefile runtime/cgo=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/runtime/cgo.a
packagefile internal/reflectlite=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/reflectlite.a
packagefile sort=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/sort.a
packagefile math/bits=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/math/bits.a
packagefile internal/oserror=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/oserror.a
packagefile internal/poll=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/poll.a
packagefile internal/syscall/unix=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/syscall/unix.a
packagefile internal/testlog=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/testlog.a
packagefile sync/atomic=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/sync/atomic.a
packagefile syscall=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/syscall.a
packagefile time=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/time.a
packagefile unicode=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/unicode.a
packagefile internal/race=/Users/grigoriy.mihalkin/Projects/go/pkg/darwin_amd64_race/internal/race.a
EOF
mkdir -p $WORK/b001/exe/
cd .
/Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/link -o $WORK/b001/exe/a.out -importcfg $WORK/b001/importcfg.link -installsuffix race -buildmode=exe -buildid=TnqlTUar2C6IrNWJY9bJ/fGZftERV3A-zKCGGaq20/fGZftERV3A-zKCGGaq20/TnqlTUar2C6IrNWJY9bJ -race -extld=clang $WORK/b001/_pkg_.a
/Users/grigoriy.mihalkin/Projects/go/pkg/tool/darwin_amd64/buildid -w $WORK/b001/exe/a.out # internal

Should i make PR?

@bcmills
Copy link
Contributor

bcmills commented Feb 18, 2020

@GrigoriyMikhalkin, nice find! Please do send a PR for Go 1.15.

@gopherbot
Copy link

Change https://golang.org/cl/219919 mentions this issue: cmd/go: fixed outfile path in ccompile

@golang golang locked and limited conversation to collaborators Feb 25, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge help wanted NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants