Skip to content

Commit

Permalink
cmd/go: honor user-specified -c=N
Browse files Browse the repository at this point in the history
User-specified '-c=N' options should take precedence over the default one generated
by cmd/go.

Change-Id: I9021440b4a4286f8d6f92acb745a777cf234a82b
Reviewed-on: https://go-review.googlesource.com/c/go/+/465095
Reviewed-by: Bryan Mills <bcmills@google.com>
Reviewed-by: David Chase <drchase@google.com>
Auto-Submit: Bryan Mills <bcmills@google.com>
Run-TryBot: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
  • Loading branch information
Xiangdong Ji authored and gopherbot committed Feb 7, 2023
1 parent 1bd0405 commit 9565d99
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/cmd/go/internal/work/gc.go
Expand Up @@ -169,7 +169,7 @@ func (gcToolchain) gc(b *Builder, a *Action, archive string, importcfg, embedcfg
}
// Add -c=N to use concurrent backend compilation, if possible.
if c := gcBackendConcurrency(gcflags); c > 1 {
gcflags = append(gcflags, fmt.Sprintf("-c=%d", c))
defaultGcFlags = append(defaultGcFlags, fmt.Sprintf("-c=%d", c))
}

args := []any{cfg.BuildToolexec, base.Tool("compile"), "-o", ofile, "-trimpath", a.trimpath(), defaultGcFlags, gcflags}
Expand Down
2 changes: 2 additions & 0 deletions src/cmd/go/testdata/script/build_gcflags_order.txt
Expand Up @@ -4,6 +4,8 @@
cd m
go build -n -gcflags=-lang=go1.17
stderr ' -lang=go1.16.* -lang=go1.17'
! go build -gcflags='-c 0'
stderr 'compile: -c must be at least 1, got 0'

-- m/go.mod --
module example.com
Expand Down

0 comments on commit 9565d99

Please sign in to comment.