[clang-tools-extra] [clangd] Don't ignore external HFI in `SymbolCollector` (PR #88446)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Apr 11 14:51:42 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang-tools-extra
Author: Jan Svoboda (jansvoboda11)
<details>
<summary>Changes</summary>
The `FileEntry` corresponds to a `FileID` containing the `SourceLocation` of a `NamedDecl` which (I think) might've been deserialized from a PCM file. Considering external `HeaderFileInfo` here is most likely the right thing to do here in order to get the correct spelling in case the current compiler instance has not register this file as a header yet.
---
Full diff: https://github.com/llvm/llvm-project/pull/88446.diff
1 Files Affected:
- (modified) clang-tools-extra/clangd/index/SymbolCollector.cpp (+1-1)
``````````diff
diff --git a/clang-tools-extra/clangd/index/SymbolCollector.cpp b/clang-tools-extra/clangd/index/SymbolCollector.cpp
index 969f27af6fb1d8..5c4e2150cf3123 100644
--- a/clang-tools-extra/clangd/index/SymbolCollector.cpp
+++ b/clang-tools-extra/clangd/index/SymbolCollector.cpp
@@ -409,7 +409,7 @@ class SymbolCollector::HeaderFileURICache {
// Framework headers are spelled as <FrameworkName/Foo.h>, not
// "path/FrameworkName.framework/Headers/Foo.h".
auto &HS = PP->getHeaderSearchInfo();
- if (const auto *HFI = HS.getExistingLocalFileInfo(*FE))
+ if (const auto *HFI = HS.getExistingFileInfo(*FE))
if (!HFI->Framework.empty())
if (auto Spelling =
getFrameworkHeaderIncludeSpelling(*FE, HFI->Framework, HS))
``````````
</details>
https://github.com/llvm/llvm-project/pull/88446
More information about the cfe-commits
mailing list