go/internal/lsp/cache
Robert Findley 1ae27d3d3d internal/lsp/cache: don't offset invalid positions
The zero value of token.Pos is special: it determines IsValid(), which
has semantic significance in many places.

offsetPositions, which adjusts positions after AST mangling, was
adjusting all positions -- including invalid positions. As a result it
was making invalid positions valid, leaving a nonsensical AST.

Fix it to skip invalid positions.

Change-Id: I844f243f9a4a3f98ace32fe30e934410d11142dd
Reviewed-on: https://go-review.googlesource.com/c/tools/+/361614
Trust: Robert Findley <rfindley@google.com>
Run-TryBot: Robert Findley <rfindley@google.com>
gopls-CI: kokoro <noreply+kokoro@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Suzy Mueller <suzmue@golang.org>
2021-11-05 15:19:55 +00:00
..
analysis.go internal/lsp/cache: keep going on failed analyzers 2021-09-22 22:01:15 +00:00
cache.go internal/lsp: export and move some objects related to metadata 2021-08-15 15:51:49 +00:00
check.go internal/typeparams: update to the new Instances API 2021-09-21 18:37:00 +00:00
error_test.go internal/lsp/cache: split up sourceDiagnostics 2021-03-02 02:05:13 +00:00
errors.go internal/lsp/cache: fix incorrect detection of useless code 2021-10-14 14:04:14 +00:00
imports.go internal/lsp/cache: fix panic in GOPATH mode 2021-01-07 18:21:03 +00:00
keys.go internal/lsp: decouple client and server debug 2020-06-11 13:49:48 +00:00
load.go internal/lsp/cache: fix flakiness of load progress reports 2021-08-17 14:56:21 +00:00
metadata.go internal/lsp: export and move some objects related to metadata 2021-08-15 15:51:49 +00:00
mod.go internal/lsp: fix support for SourceFixAll code actions 2021-03-24 23:51:27 +00:00
mod_tidy.go internal/lsp: remove unnecessary call to WorkspacePackages in mod tidy 2021-03-30 04:13:47 +00:00
os_darwin.go internal/lsp/cache: clarify an error message about mismatching casing 2021-08-03 17:18:10 +00:00
os_windows.go internal/lsp/cache: clarify an error message about mismatching casing 2021-08-03 17:18:10 +00:00
parse.go internal/lsp/cache: don't offset invalid positions 2021-11-05 15:19:55 +00:00
parse_test.go internal/lsp/cache: trim more stuff in ParseExported mode 2021-05-11 17:48:41 +00:00
pkg.go internal/lsp/cache: don't offset invalid positions 2021-11-05 15:19:55 +00:00
session.go internal/lsp: don't add multiple views for the same folder 2021-10-19 23:27:41 +00:00
snapshot.go internal/lsp: fix data race in Templates code 2021-10-19 21:17:55 +00:00
symbols.go internal/lsp: precompute workspace symbols 2021-08-09 20:20:17 +00:00
view.go /internal/lsp/source: apply directory filters to workspace symbols 2021-10-30 12:32:06 +00:00
view_test.go internal/lsp: exclude the module cache from the workspace 2021-06-11 17:18:39 +00:00
workspace.go internal/lsp: support go.work outside of experimental 2021-09-29 19:20:39 +00:00
workspace_test.go internal/lsp: start parsing go.work file like gopls.mod file 2021-06-24 04:20:31 +00:00