From: Conrad Irwin Date: Fri, 22 Nov 2024 04:03:29 +0000 (-0700) Subject: cmd/go: pass os.Args[0] to mod tools X-Git-Tag: go1.24rc1~84 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=8fb6a469472b3d79798da0b3f84b9579fae18ec3;p=gostls13.git cmd/go: pass os.Args[0] to mod tools Fixes #70509 Change-Id: I62952c0ac5de456742b7bee3552a0d90238bfde5 Reviewed-on: https://go-review.googlesource.com/c/go/+/631075 Reviewed-by: Michael Matloob LUCI-TryBot-Result: Go LUCI Reviewed-by: Dmitri Shuralyov Auto-Submit: Ian Lance Taylor --- diff --git a/src/cmd/go/internal/tool/tool.go b/src/cmd/go/internal/tool/tool.go index 36bf983872..9fd917e0cb 100644 --- a/src/cmd/go/internal/tool/tool.go +++ b/src/cmd/go/internal/tool/tool.go @@ -305,7 +305,7 @@ func runBuiltTool(b *work.Builder, ctx context.Context, a *work.Action) error { toolCmd := &exec.Cmd{ Path: cmdline[0], - Args: cmdline[1:], + Args: cmdline, Stdin: os.Stdin, Stdout: os.Stdout, Stderr: os.Stderr, diff --git a/src/cmd/go/testdata/script/tool_exename.txt b/src/cmd/go/testdata/script/tool_exename.txt index dc289b4764..012a107388 100644 --- a/src/cmd/go/testdata/script/tool_exename.txt +++ b/src/cmd/go/testdata/script/tool_exename.txt @@ -12,6 +12,12 @@ go tool bar stdout 'my name is: bar'$GOEXE ! stdout 'a.out' +# Third run: with arguments +# https://go.dev/issue/70509 +go tool bar --baz +stdout 'my name is: bar'$GOEXE +! stdout 'a.out' + -- go.mod -- module example.com/foo