const AliasTypeParams = false
const AliasTypeParamsInt = 0
const Arenas = false
const ArenasInt = 0
const BoringCrypto = false
const BoringCryptoInt = 0
const CacheProg = false
const CacheProgInt = 0
const CgoCheck2 = false
const CgoCheck2Int = 0
const CoverageRedesign = true
const CoverageRedesignInt = 1
const FieldTrack = false
const FieldTrackInt = 0
const HeapMinimum512KiB = false
const HeapMinimum512KiBInt = 0
const LoopVar = false
const LoopVarInt = 0
const NewInliner = false
const NewInlinerInt = 0
const PreemptibleLoops = false
const PreemptibleLoopsInt = 0
const RangeFunc = false
const RangeFuncInt = 0
const RegabiArgs = true
const RegabiArgsInt = 1
const RegabiWrappers = true
const RegabiWrappersInt = 1
const StaticLockRanking = false
const StaticLockRankingInt = 0
Flags is the set of experiments that can be enabled or disabled in the current toolchain.
When specified in the GOEXPERIMENT environment variable or as build tags, experiments use the strings.ToLower of their field name.
For the baseline experimental configuration, see objabi.experimentBaseline.
If you change this struct definition, run "go generate".
type Flags struct { FieldTrack bool PreemptibleLoops bool StaticLockRanking bool BoringCrypto bool // RegabiWrappers enables ABI wrappers for calling between // ABI0 and ABIInternal functions. Without this, the ABIs are // assumed to be identical so cross-ABI calls are direct. RegabiWrappers bool // RegabiArgs enables register arguments/results in all // compiled Go functions. // // Requires wrappers (to do ABI translation), and reflect (so // reflection calls use registers). RegabiArgs bool // HeapMinimum512KiB reduces the minimum heap size to 512 KiB. // // This was originally reduced as part of PacerRedesign, but // has been broken out to its own experiment that is disabled // by default. HeapMinimum512KiB bool // CoverageRedesign enables the new compiler-based code coverage // tooling. CoverageRedesign bool // Arenas causes the "arena" standard library package to be visible // to the outside world. Arenas bool // CgoCheck2 enables an expensive cgo rule checker. // When this experiment is enabled, cgo rule checks occur regardless // of the GODEBUG=cgocheck setting provided at runtime. CgoCheck2 bool // LoopVar changes loop semantics so that each iteration gets its own // copy of the iteration variable. LoopVar bool // CacheProg adds support to cmd/go to use a child process to implement // the build cache; see https://github.com/golang/go/issues/59719. CacheProg bool // NewInliner enables a new+improved version of the function // inlining phase within the Go compiler. NewInliner bool // RangeFunc enables range over func. RangeFunc bool // AliasTypeParams enables type parameters for alias types. // Requires that gotypesalias=1 is set with GODEBUG. // This flag will be removed with Go 1.24. AliasTypeParams bool }