go/types.Named.Underlying (method, view implemented interface methods)

16 uses

	go/types (current package)
		lookup.go#L62: 		if p, _ := t.Underlying().(*Pointer); p != nil {
		named.go#L507: func (t *Named) Underlying() Type {
		named.go#L539: 	u := n0.Underlying()
		named.go#L581: 		u = n.Underlying()
		validtype.go#L100: 		if !isValid(t.Underlying()) {

	golang.org/x/exp/apidiff
		compatibility.go#L263: 	d.checkCompatible(otn, old.Underlying(), new.Underlying())
		compatibility.go#L266: 	if reflect.TypeOf(old.Underlying()) != reflect.TypeOf(new.Underlying()) {
		compatibility.go#L270: 	if _, ok := old.Underlying().(*types.Interface); ok {

	golang.org/x/tools/go/types/objectpath
		objectpath.go#L302: 			if r := find(obj, named.Underlying(), append(path, opUnderlying)); r != nil {
		objectpath.go#L693: 			t = named.Underlying()

	golang.org/x/tools/internal/gcimporter
		iexport.go#L814: 		underlying := named.Underlying()

	golang.org/x/tools/internal/typeparams
		coretype.go#L116: 		typ = named.Underlying()
		free.go#L121: 		return w.Has(t.Underlying()) // recurse for types local to parameterized functions

	golang.org/x/tools/internal/typesinternal
		element.go#L107: 			visit(T.Underlying(), true) // skip the unnamed type
		zerovalue.go#L64: 		switch under := t.Underlying().(type) {
		zerovalue.go#L157: 		switch under := t.Underlying().(type) {