aboutsummaryrefslogtreecommitdiff
path: root/src/cmd
diff options
context:
space:
mode:
authorMatthew Dempsky <mdempsky@google.com>2022-05-02 17:37:44 -0700
committerMatthew Dempsky <mdempsky@google.com>2022-05-05 18:48:17 +0000
commite94fe09c33f9608ced0e7abcabba9fb697844a6c (patch)
treead00c45a5009df44aba025c8e0ca350486a8ce2f /src/cmd
parent115c3bfad55809a27009f9ea6f95970ff94164f0 (diff)
downloadgo-e94fe09c33f9608ced0e7abcabba9fb697844a6c.tar.xz
cmd/compile: remove ir.Name.TypeDefn
This method used to be needed so the legacy typechecker could report type declaration loops, but that's handled by types2 now. Change-Id: Ie0d89e6dcff277778b12ed960b6b31669fd903a7 Reviewed-on: https://go-review.googlesource.com/c/go/+/403838 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Diffstat (limited to 'src/cmd')
-rw-r--r--src/cmd/compile/internal/ir/name.go10
-rw-r--r--src/cmd/compile/internal/types/type.go8
2 files changed, 1 insertions, 17 deletions
diff --git a/src/cmd/compile/internal/ir/name.go b/src/cmd/compile/internal/ir/name.go
index 183aa6db7c..d057b3eafa 100644
--- a/src/cmd/compile/internal/ir/name.go
+++ b/src/cmd/compile/internal/ir/name.go
@@ -141,16 +141,6 @@ func (n *Name) copy() Node { panic(n.no("copy")) }
func (n *Name) doChildren(do func(Node) bool) bool { return false }
func (n *Name) editChildren(edit func(Node) Node) {}
-// TypeDefn returns the type definition for a named OTYPE.
-// That is, given "type T Defn", it returns Defn.
-// It is used by package types.
-func (n *Name) TypeDefn() *types.Type {
- if n.Ntype != nil {
- return n.Ntype.Type()
- }
- return n.Type()
-}
-
// RecordFrameOffset records the frame offset for the name.
// It is used by package types when laying out function arguments.
func (n *Name) RecordFrameOffset(offset int64) {
diff --git a/src/cmd/compile/internal/types/type.go b/src/cmd/compile/internal/types/type.go
index 987352babc..c8fe31e718 100644
--- a/src/cmd/compile/internal/types/type.go
+++ b/src/cmd/compile/internal/types/type.go
@@ -21,12 +21,6 @@ type Object interface {
Type() *Type
}
-// A TypeObject is an Object representing a named type.
-type TypeObject interface {
- Object
- TypeDefn() *Type // for "type T Defn", returns Defn
-}
-
//go:generate stringer -type Kind -trimprefix T type.go
// Kind describes a kind of type.
@@ -1722,7 +1716,7 @@ var (
// type should be set later via SetUnderlying(). References to the type are
// maintained until the type is filled in, so those references can be updated when
// the type is complete.
-func NewNamed(obj TypeObject) *Type {
+func NewNamed(obj Object) *Type {
t := newType(TFORW)
t.sym = obj.Sym()
t.nod = obj