diff --git a/internal/lsp/source/rename_check.go b/internal/lsp/source/rename_check.go index 8823951b1b..2b2088b9fd 100644 --- a/internal/lsp/source/rename_check.go +++ b/internal/lsp/source/rename_check.go @@ -120,10 +120,12 @@ func (r *renamer) checkInPackageBlock(from types.Object) { fileScope := pkg.GetTypesInfo().Scopes[f] b, prev := fileScope.LookupParent(r.to, token.NoPos) if b == fileScope { - r.errorf(from.Pos(), "renaming this %s %q to %q would conflict", - objectKind(from), from.Name(), r.to) - r.errorf(prev.Pos(), "\twith this %s", - objectKind(prev)) + r.errorf(from.Pos(), "renaming this %s %q to %q would conflict", objectKind(from), from.Name(), r.to) + var prevPos token.Pos + if prev != nil { + prevPos = prev.Pos() + } + r.errorf(prevPos, "\twith this %s", objectKind(prev)) return // since checkInPackageBlock would report redundant errors } }