aboutsummaryrefslogtreecommitdiff
path: root/src/go
diff options
context:
space:
mode:
authorRobert Griesemer <gri@golang.org>2024-04-17 18:40:27 -0700
committerGopher Robot <gobot@golang.org>2024-04-18 14:10:47 +0000
commite718aee5f50b06d73ad4e679d0862267147347b0 (patch)
treeae1efb2037dd7e27ec53d1c78eac7e86bb9fb8e0 /src/go
parent9101bf19165ecde1967a0163d2fafa168e40ac6d (diff)
downloadgo-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.go7
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