Skip to content

internal/goexperiment, cmd/go: user facing documentation for GOEXPERIMENT points to internal source for list of supported values #74344

Open
@dolmen

Description

@dolmen

Go version

go version go1.25rc1 darwin/arm64

Output of go env in your module/workspace:

GOEXPERIMENT=""

What did you do?

$ go1.25rc1 help environment | grep -A5 GOEXPERIMENT
	GOEXPERIMENT
		Comma-separated list of toolchain experiments to enable or disable.
		The list of available experiments may change arbitrarily over time.
		See GOROOT/src/internal/goexperiment/flags.go for currently valid values.
		Warning: This variable is provided for the development and testing
		of the Go toolchain itself. Use beyond that purpose is unsupported.
$ go1.25rc1 doc internal/goexperiment | grep -A2 "current toolchain"
For the set of experiments supported by the current toolchain, see "go doc
goexperiment.Flags".

$ go1.25rc1 doc goexperiment.Flags | head -n5
package goexperiment // import "internal/goexperiment"

type Flags struct {
	FieldTrack        bool
	PreemptibleLoops  bool
$ go1.25rc1 doc goexperiment | grep '^const ' | head
const AliasTypeParams = true
const AliasTypeParamsInt = 1
const Arenas = false
const ArenasInt = 0
const BoringCrypto = false
const BoringCryptoInt = 0
const CacheProg = false
const CacheProgInt = 0
const CgoCheck2 = false
const CgoCheck2Int = 0

What did you see happen?

The "go help environment" points to an internal source file that is not easily accessible.

None of the document shown above show the lower case GOEXPERIMENT values.

What did you expect to see?

I would like to see a simple list of the allowed GOEXPERIMENT values and their meaning, quickly linked from go help environment.

Metadata

Metadata

Assignees

Labels

DocumentationIssues describing a change to documentation.FeatureRequestIssues asking for a new feature that does not need a proposal.FixPendingIssues that have a fix which has not yet been reviewed or submitted.GoCommandcmd/gocompiler/runtimeIssues related to the Go compiler and/or runtime.help wanted

Type

No type

Projects

Status

Todo

Relationships

None yet

Development

No branches or pull requests

Issue actions