]> Cypherpunks repositories - gostls13.git/commit
cmd/go/internal/load: recompute test variant's build info if necessary
authorMichael Matloob <matloob@golang.org>
Mon, 1 Jul 2024 20:34:08 +0000 (16:34 -0400)
committerMichael Matloob <matloob@golang.org>
Tue, 30 Jul 2024 19:14:11 +0000 (19:14 +0000)
commit1f72ce31f06fbb28c289f5ee7e33d6c54c6894bc
tree7fe580e5e46358eded7124cf0dcec14ff2cb28f8
parentc7227bc72c5ceaf9f957473cdde4753edc6155cd
cmd/go/internal/load: recompute test variant's build info if necessary

The buildinfo used for a testmain is a copy from the buildinfo produced
for the package under test, and that in turn is only computed if the
package under test is package main. If there are //go:debug directives
in a test file for package main, the godebugs for the testmain (which
are computed using the regular package files as well as the test files'
//go:debug directives) will be different from those used to produce the
buildinfo of the package under test (computed using the //go:debug
directives only in the main package). In that case, recompute the
buildinfo for the testmain to incorporate the new godebug information.

Since we've only been generating buildinfo for tests on package main, in
this CL we'll only recompute the buildinfo if the test is for package
main. It's not clear to me though if we should be computing the
buildinfo for all test mains (or none of them?)

Fixes #68053

Change-Id: Ib6cdb118e2f233de483c33e171c0cd03df1fc7be
Reviewed-on: https://go-review.googlesource.com/c/go/+/595961
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Sam Thanawalla <samthanawalla@google.com>
src/cmd/go/internal/load/test.go
src/cmd/go/testdata/script/test_buildinfo_godebug_issue68053.txt [new file with mode: 0644]