diff --git a/internal/lsp/cache/check.go b/internal/lsp/cache/check.go index c571cf5c83..3bc6f05ad2 100644 --- a/internal/lsp/cache/check.go +++ b/internal/lsp/cache/check.go @@ -146,13 +146,6 @@ func (imp *importer) typeCheck(ctx context.Context, id packageID) (*pkg, error) } wg.Wait() - var i int - for _, f := range files { - if f != nil { - files[i] = f - i++ - } - } for _, err := range parseErrors { if err == context.Canceled { return nil, err @@ -162,6 +155,15 @@ func (imp *importer) typeCheck(ctx context.Context, id packageID) (*pkg, error) } } + var i int + for _, f := range files { + if f != nil { + files[i] = f + i++ + } + } + files = files[:i] + // Use the default type information for the unsafe package. if meta.pkgPath == "unsafe" { pkg.types = types.Unsafe