diff options
author | Dan Scales <danscales@google.com> | 2021-08-18 06:28:40 -0700 |
---|---|---|
committer | Dan Scales <danscales@google.com> | 2021-08-27 01:42:38 +0000 |
commit | d7e2e2ec2b2a11c2bfb98a27c03d0dccba62c4fb (patch) | |
tree | 3731dfd4abcf85abbfffeee598be743fd814d75e /src/cmd/compile/internal/reflectdata/reflect.go | |
parent | c92759978372ffc354f83e08b1dd6fa496e9b545 (diff) | |
download | go-d7e2e2ec2b2a11c2bfb98a27c03d0dccba62c4fb.tar.gz go-d7e2e2ec2b2a11c2bfb98a27c03d0dccba62c4fb.zip |
cmd/compile: delay fillinMethods to deal with mutually-recursive types
We need to delay fillinMethods until we get to a top-level type, so we
know all the TFORW types have been filled in, and we can do the
substitutions required by fillinMethods.
Fixes #47710
Change-Id: I298de7e7753ed31a2c2b1ff04f35177a8afc7a66
Reviewed-on: https://go-review.googlesource.com/c/go/+/345149
Trust: Dan Scales <danscales@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/cmd/compile/internal/reflectdata/reflect.go')
-rw-r--r-- | src/cmd/compile/internal/reflectdata/reflect.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cmd/compile/internal/reflectdata/reflect.go b/src/cmd/compile/internal/reflectdata/reflect.go index deb806beac..ca48db03f5 100644 --- a/src/cmd/compile/internal/reflectdata/reflect.go +++ b/src/cmd/compile/internal/reflectdata/reflect.go @@ -927,7 +927,7 @@ func formalType(t *types.Type) *types.Type { func writeType(t *types.Type) *obj.LSym { t = formalType(t) - if t.IsUntyped() { + if t.IsUntyped() || t.HasTParam() { base.Fatalf("writeType %v", t) } |