@@ -1637,7 +1637,7 @@ func extractType(tw *trap.Writer, tp types.Type) trap.Label {
1637
1637
// Note that methods coming from embedded interfaces can be
1638
1638
// accessed through `Method(i)`, so there is no need to
1639
1639
// deal with them separately.
1640
- meth := tp .Method (i )
1640
+ meth := tp .Method (i ). Origin ()
1641
1641
1642
1642
// Note that methods do not have a parent scope, so they are
1643
1643
// not dealt with by `extractScopes`
@@ -1707,15 +1707,15 @@ func extractType(tw *trap.Writer, tp types.Type) trap.Label {
1707
1707
// ensure all methods have labels - note that methods do not have a
1708
1708
// parent scope, so they are not dealt with by `extractScopes`
1709
1709
for i := 0 ; i < origintp .NumMethods (); i ++ {
1710
- meth := origintp .Method (i )
1710
+ meth := origintp .Method (i ). Origin ()
1711
1711
1712
1712
extractMethod (tw , meth )
1713
1713
}
1714
1714
1715
1715
// associate all methods of underlying interface with this type
1716
1716
if underlyingInterface , ok := underlying .(* types.Interface ); ok {
1717
1717
for i := 0 ; i < underlyingInterface .NumMethods (); i ++ {
1718
- methlbl := extractMethod (tw , underlyingInterface .Method (i ))
1718
+ methlbl := extractMethod (tw , underlyingInterface .Method (i ). Origin () )
1719
1719
dbscheme .MethodHostsTable .Emit (tw , methlbl , lbl )
1720
1720
}
1721
1721
}
@@ -1787,7 +1787,7 @@ func getTypeLabel(tw *trap.Writer, tp types.Type) (trap.Label, bool) {
1787
1787
case * types.Interface :
1788
1788
var b strings.Builder
1789
1789
for i := 0 ; i < tp .NumMethods (); i ++ {
1790
- meth := tp .Method (i )
1790
+ meth := tp .Method (i ). Origin ()
1791
1791
methLbl := extractType (tw , meth .Type ())
1792
1792
if i > 0 {
1793
1793
b .WriteString ("," )
0 commit comments