gopls: stubbed methods shouldn't qualify the current package
Fixes golang/go#61830
Change-Id: I41aff8177b57d64a684cd11ff78aa7c4f00ce36c
GitHub-Last-Rev: a6677458679d57df22a1ffff293333f53f2a9603
GitHub-Pull-Request: golang/tools#447
Reviewed-on: https://go-review.googlesource.com/c/tools/+/516758
Reviewed-by: Robert Findley <rfindley@google.com>
Run-TryBot: t hepudds <thepudds1460@gmail.com>
gopls-CI: kokoro <noreply+kokoro@google.com>
Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
diff --git a/gopls/internal/lsp/source/stub.go b/gopls/internal/lsp/source/stub.go
index b7b2292..1f88679 100644
--- a/gopls/internal/lsp/source/stub.go
+++ b/gopls/internal/lsp/source/stub.go
@@ -125,6 +125,12 @@
var newImports []newImport // for AddNamedImport
qual := func(pkg *types.Package) string {
// TODO(adonovan): don't ignore vendor prefix.
+ //
+ // Ignore the current package import.
+ if pkg.Path() == conc.Pkg().Path() {
+ return ""
+ }
+
importPath := ImportPath(pkg.Path())
name, ok := importEnv[importPath]
if !ok {