[clang-tools-extra] 0e7c7d4 - [clangd] Set FileSystem for tweaks in Check tool.
Utkarsh Saxena via cfe-commits
cfe-commits at lists.llvm.org
Mon May 17 02:10:26 PDT 2021
Author: Utkarsh Saxena
Date: 2021-05-17T11:10:07+02:00
New Revision: 0e7c7d461df167f141428286afb781636ac92a9e
URL: https://github.com/llvm/llvm-project/commit/0e7c7d461df167f141428286afb781636ac92a9e
DIFF: https://github.com/llvm/llvm-project/commit/0e7c7d461df167f141428286afb781636ac92a9e.diff
LOG: [clangd] Set FileSystem for tweaks in Check tool.
Tweaks like DefineOutline depend on FS to be set at `apply()` time.
After https://reviews.llvm.org/D93978, tweaks run from Check tool lost
access to FS. This makes the available to apply() once again.
Differential Revision: https://reviews.llvm.org/D102519
Added:
Modified:
clang-tools-extra/clangd/tool/Check.cpp
Removed:
################################################################################
diff --git a/clang-tools-extra/clangd/tool/Check.cpp b/clang-tools-extra/clangd/tool/Check.cpp
index 0b1da96771972..89487bd8607f1 100644
--- a/clang-tools-extra/clangd/tool/Check.cpp
+++ b/clang-tools-extra/clangd/tool/Check.cpp
@@ -212,8 +212,13 @@ class Checker {
AST->getTokens(), Start, End);
Tweak::Selection Selection(&Index, *AST, Start, End, std::move(Tree),
nullptr);
- for (const auto &T :
- prepareTweaks(Selection, Opts.TweakFilter, Opts.FeatureModules)) {
+ // FS is only populated when applying a tweak, not during prepare as
+ // prepare should not do any I/O to be fast.
+ auto Tweaks =
+ prepareTweaks(Selection, Opts.TweakFilter, Opts.FeatureModules);
+ Selection.FS =
+ &AST->getSourceManager().getFileManager().getVirtualFileSystem();
+ for (const auto &T : Tweaks) {
auto Result = T->apply(Selection);
if (!Result) {
elog(" tweak: {0} ==> FAIL: {1}", T->id(), Result.takeError());
More information about the cfe-commits
mailing list