From: Matthew Dempsky Date: Tue, 9 Aug 2022 07:30:15 +0000 (-0700) Subject: test: more robust detection of GOEXPERIMENT=unified X-Git-Tag: go1.20rc1~1711 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=d4280fda462e06819a416a2e298b7896bdc1654c;p=gostls13.git test: more robust detection of GOEXPERIMENT=unified `go env GOEXPERIMENT` prints what experiments are enabled relative to the baseline configuration, so it's not a very robust way to detect what experiments have been statically enabled at bootstrap time. Instead, we can check build.Default.ToolTags, which has goexperiment.* for all currently enabled experiments, independent of baseline. Change-Id: I6132deaa73b1e79ac24176ef4de5af67a507ee26 Reviewed-on: https://go-review.googlesource.com/c/go/+/422234 Run-TryBot: Matthew Dempsky TryBot-Result: Gopher Robot Reviewed-by: Cuong Manh Le Reviewed-by: David Chase --- diff --git a/test/run.go b/test/run.go index c263a41877..3665a186a4 100644 --- a/test/run.go +++ b/test/run.go @@ -75,10 +75,14 @@ var env = func() (res envVars) { return }() -// TODO(mdempsky): This will give false negatives if the unified -// experiment is enabled by default, but presumably at that point we -// won't need to disable tests for it anymore anyway. -var unifiedEnabled = strings.Contains(","+env.GOEXPERIMENT+",", ",unified,") +var unifiedEnabled = func() bool { + for _, tag := range build.Default.ToolTags { + if tag == "goexperiment.unified" { + return true + } + } + return false +}() // defaultAllCodeGen returns the default value of the -all_codegen // flag. By default, we prefer to be fast (returning false), except on