[PATCH] D88204: [clangd] Drop path suffix mapping for std symbols

Kadir Cetinkaya via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 24 02:06:53 PDT 2020


kadircet created this revision.
kadircet added a reviewer: sammccall.
Herald added subscribers: cfe-commits, usaxena95, jfb, arphaman.
Herald added a project: clang.
kadircet requested review of this revision.
Herald added subscribers: MaskRay, ilya-biryukov.

As mentioned in D88144 <https://reviews.llvm.org/D88144>, this is only used as a fallback for symbols
missing in our stdsymbol mappings and preventing us from figuring out what's
broken.

After this patch we'll regress some cases, e.g. std::move, but those were
already broken for libc++ or C.

---

I am also happy with coming up with special casing sfor obvious regressions,
like std::move, before landing. The special casing I have in mind could either
be:

- having a more targeted version of the suffix mapping targeted at those symbols, so we can stop the bleeding as we figure out cases even if we can't invest in a more principled solution.
- just picking a single header in case of ambigious symbols, this might end up being annoying as clangd will insist on inserting the wrong header.
- disable include insertion completely for problematic symbols until we figure out a solution.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D88204

Files:
  clang-tools-extra/clangd/index/CanonicalIncludes.cpp
  clang-tools-extra/clangd/index/CanonicalIncludes.h
  clang-tools-extra/clangd/unittests/CanonicalIncludesTests.cpp
  clang-tools-extra/clangd/unittests/FileIndexTests.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D88204.293976.patch
Type: text/x-patch
Size: 34874 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200924/e02f3e7b/attachment-0001.bin>


More information about the cfe-commits mailing list