go/internal/lsp/testdata
Muir Manders 61798d64f0 internal/lsp: fix crash completing recursive pointer types
We were recursing infinitely evaluating objects of recursive pointer
types such as "type foo *foo". Now we track named pointer types we
have already seen to avoid trying to dereference such objects forever.
I lazily initialized the "seen" map to avoid the allocation in the
normal case when you aren't dealing with named pointer types.

Fixes golang/go#37104.

Change-Id: I5f294cfc5a641e7b5fd24e1d9dc55520726ea560
Reviewed-on: https://go-review.googlesource.com/c/tools/+/218579
Run-TryBot: Muir Manders <muir@mnd.rs>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2020-02-07 22:44:06 +00:00
..
indirect internal/lsp: add quickfixes for missing dependencies in go.mod 2020-02-07 00:16:14 +00:00
lsp internal/lsp: fix crash completing recursive pointer types 2020-02-07 22:44:06 +00:00
missingdep internal/lsp: add quickfixes for missing dependencies in go.mod 2020-02-07 00:16:14 +00:00
missingtwodep internal/lsp: add quickfixes for missing dependencies in go.mod 2020-02-07 00:16:14 +00:00
unused internal/lsp: add quickfixes for missing dependencies in go.mod 2020-02-07 00:16:14 +00:00