go/internal/lsp/testdata/godef
Muir Manders 5bad45943a internal/lsp: fix godef for embedded type aliases
In

    type myAlias = someType
    type _ struct {
      myAlias
    }

Previously running "definition" on the "myAlias" field would take you
to the definition of "someType" instead of "myAlias". This is because
we were using the field's (*types.Var).Type() which has already
forgotten it is an alias. Fix by instead looking up the field name
ident in types.Info.Uses which yields the *types.TypeName (for the
type alias).

Fixes golang/go#42254.

Change-Id: Idbbd0c49ba6f701f52568b3ab1143d8e24037c69
Reviewed-on: https://go-review.googlesource.com/c/tools/+/272186
Run-TryBot: Muir Manders <muir@mnd.rs>
gopls-CI: kokoro <noreply+kokoro@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
Reviewed-by: Muir Manders <muir@mnd.rs>
Trust: Rebecca Stambler <rstambler@golang.org>
Trust: Robert Findley <rfindley@google.com>
2020-11-23 15:59:28 +00:00
..
a internal/lsp: fix godef for embedded type aliases 2020-11-23 15:59:28 +00:00
b internal/lsp: fix godef for embedded type aliases 2020-11-23 15:59:28 +00:00
broken internal/lsp: remove multi-module support in tests 2020-09-22 16:28:30 +00:00