diff options
author | Robert Griesemer <gri@golang.org> | 2024-04-17 18:40:27 -0700 |
---|---|---|
committer | Gopher Robot <gobot@golang.org> | 2024-04-18 14:10:47 +0000 |
commit | e718aee5f50b06d73ad4e679d0862267147347b0 (patch) | |
tree | ae1efb2037dd7e27ec53d1c78eac7e86bb9fb8e0 /src/go | |
parent | 9101bf19165ecde1967a0163d2fafa168e40ac6d (diff) | |
download | go-e718aee5f50b06d73ad4e679d0862267147347b0.tar.gz go-e718aee5f50b06d73ad4e679d0862267147347b0.zip |
go/types: track gotypesalias non-default behavior
Fixes #66216.
Change-Id: I04d7389e5712b35db078844ce424e10f5b96156c
Reviewed-on: https://go-review.googlesource.com/c/go/+/579936
Auto-Submit: Robert Griesemer <gri@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Robert Griesemer <gri@google.com>
Reviewed-by: Robert Findley <rfindley@google.com>
Diffstat (limited to 'src/go')
-rw-r--r-- | src/go/types/decl.go | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/go/types/decl.go b/src/go/types/decl.go index 679dc1a136..1275e4f8d2 100644 --- a/src/go/types/decl.go +++ b/src/go/types/decl.go @@ -607,6 +607,13 @@ func (check *Checker) typeDecl(obj *TypeName, tdecl *ast.TypeSpec, def *TypeName alias.fromRHS = rhs Unalias(alias) // resolve alias.actual } else { + // With Go1.23, the default behavior is to use Alias nodes, + // reflected by check.enableAlias. Signal non-default behavior. + // + // TODO(gri) Testing runs tests in both modes. Do we need to exclude + // tracking of non-default behavior for tests? + gotypesalias.IncNonDefault() + if !versionErr && tparam0 != nil { check.error(tdecl, UnsupportedFeature, "generic type alias requires GODEBUG=gotypesalias=1 or unset") versionErr = true |