This revision was automatically updated to reflect the committed changes.
Closed by commit rL354268: [clangd] Cache include fixes for diagnostics caused
by the same unresolved nameā¦ (authored by ioeric, committed by ).
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
ioeric updated this revision to Diff 187226.
ioeric marked 2 inline comments as done.
ioeric added a comment.
- pulled cached index queries into functions
Repository:
rCTE Clang Tools Extra
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58239/new/
https://reviews.llvm.org/D58239
sammccall accepted this revision.
sammccall added a comment.
This revision is now accepted and ready to land.
SymbolSlab is much cleaner, nice!
Comment at: clangd/IncludeFixer.cpp:122
- if (!Matched || Matched->IncludeHeaders.empty() || !Matched->Definition ||
-
ioeric added inline comments.
Comment at: clangd/IncludeFixer.h:85
+ // name or incomplete type in one parse, especially when code is
+ // copy-and-pasted without #includes. As fixes are purely dependent on index
+ // requests and index results at this point, we can cache
ioeric updated this revision to Diff 187205.
ioeric marked 4 inline comments as done.
ioeric added a comment.
- address review comments
Repository:
rCTE Clang Tools Extra
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58239/new/
https://reviews.llvm.org/D58239
Files:
sammccall added a comment.
(big thumbs up to the caching overall of course!)
Repository:
rCTE Clang Tools Extra
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58239/new/
https://reviews.llvm.org/D58239
___
cfe-commits mailing list
sammccall added inline comments.
Comment at: clangd/IncludeFixer.cpp:130
+ // FIXME: consider batching the requests for all diagnostics.
llvm::Optional Matched;
Index.lookup(Req, [&](const Symbol ) {
oops - this seems broken (in both the old and new
ioeric created this revision.
ioeric added a reviewer: sammccall.
Herald added subscribers: cfe-commits, jdoerfert, kadircet, arphaman, jkorous,
MaskRay, ilya-biryukov.
Herald added a project: clang.
Multiple diagnostics can be caused by the same unresolved name or incomplete
type,
especially