sammccall added inline comments.
================ Comment at: clang-tools-extra/clangd/index/SymbolCollector.cpp:563 if (auto Header = getIncludeHeader(QName, Entry.second)) { + // Hack: there are two std::move() overloads from different headers. + // CanonicalIncludes returns the common one-arg one from <utility>. ---------------- kadircet wrote: > i think this should live inside `CanonicalIncludes`. What about changing > `mapHeader` to take in an `llvm::Optional<size_t> NumParams` or > `llvm::Optional<llvm::StringRef> Signature` ? > > That way we can actually get rid of the ambiguity caused by all of the > overloads. I am not sure if number of parameters is always going to be enough > tho so `Signature` might be a safer bet with some canonicalization so that we > can match the version in cppreference. > > (I would prefer the solution above, but I am also fine with moving this into > `SymbolCollector::getIncludeHeader` with a FIXME.) That's kind of the point of this patch, I think this one special case isn't worth making that library more complicated. Would also be happy with just always suggesting <utility>, or never suggesting anything, though. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88885/new/ https://reviews.llvm.org/D88885 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits