[clang] [clang-tools-extra] clangd: Extend reference search with constructor calls through forwarding (PR #169742)
Nathan Ridge via cfe-commits
cfe-commits at lists.llvm.org
Tue Dec 16 22:55:03 PST 2025
================
@@ -576,6 +578,27 @@ SymbolCollector::getRefContainer(const Decl *Enclosing,
return Enclosing;
}
+std::vector<CXXConstructorDecl *>
+SymbolCollector::findIndirectConstructors(const Decl *D) {
+ auto *FD = llvm::dyn_cast<clang::FunctionDecl>(D);
+ if (FD == nullptr || !FD->isTemplateInstantiation())
+ return {};
+ if (auto *PT = FD->getPrimaryTemplate();
+ PT == nullptr || !isLikelyForwardingFunction(PT))
+ return {};
+ if (auto Entry = ForwardingToConstructorCache.find(FD);
----------------
HighCommander4 wrote:
A hashtable lookup is going to be quicker than an `isLikelyForwardingFunction` check, let's switch the order?
https://github.com/llvm/llvm-project/pull/169742
More information about the cfe-commits
mailing list