llvm/clang-tools-extra
Kadir Cetinkaya 99b6254657 [clangd] Support for standard type hierarchy
This is mostly a mechanical change to adapt standard type hierarchy
support proposed in LSP 3.17 on top of clangd's existing extension support.

This does mainly two things:
- Incorporate symbolids for all the parents inside resolution parameters, so
  that they can be retrieved from index later on. This is a new code path, as
  extension always resolved them eagerly.
- Propogate parent information when resolving children, so that at least one
  branch of parents is always preserved. This is to address a shortcoming in the
  extension.

This doesn't drop support for the extension, but it's deprecated from now on and
will be deleted in upcoming releases. Currently we use the same struct
internally but don't serialize extra fields.

Fixes https://github.com/clangd/clangd/issues/826.

Differential Revision: https://reviews.llvm.org/D131385

(cherry picked from commit 83411bf06f34ae06731008eeabfc53553c1a1f86)
2022-08-23 19:09:56 +02:00
..
clang-apply-replacements Use the range-based overload of llvm::sort where possible 2022-07-23 15:13:25 +02:00
clang-change-namespace Use drop_begin (NFC) 2022-07-15 23:24:59 -07:00
clang-doc [clang-doc] Add check for pointer validity 2022-07-22 17:36:30 +00:00
clang-include-fixer Use llvm::sort instead of std::sort where possible 2022-07-23 15:19:05 +02:00
clang-move
clang-query
clang-reorder-fields Use llvm::sort instead of std::sort where possible 2022-07-23 15:19:05 +02:00
clang-tidy [clang-tidy] Add CLANG_TIDY_CONFUSABLE_CHARS_GEN cmake cache variable to avoid building when cross compiling 2022-07-29 15:23:32 -07:00
clangd [clangd] Support for standard type hierarchy 2022-08-23 19:09:56 +02:00
docs [clang-tidy][docs] Fixed page title for abseil-no-internal-dependencies check documentation 2022-08-15 09:31:34 +02:00
include-cleaner [include-cleaner] Fix build error in unit test 2022-06-09 03:38:13 -04:00
modularize
pp-trace
pseudo [pseudo] Allow opaque nodes to represent terminals 2022-07-26 13:56:26 +02:00
test Revert "[clang] Pass FoundDecl to DeclRefExpr creator for operator overloads" 2022-08-11 09:08:23 +02:00
tool-template
unittests [clang-tidy] Remove unnecessary code from ReadabilityModuleTest 2022-07-19 05:21:19 +01:00
.gitignore
CMakeLists.txt
CODE_OWNERS.TXT
LICENSE.TXT
README.txt [NFC] update clang-tools-extra README.txt 2022-06-10 16:59:57 +05:30

//===----------------------------------------------------------------------===//
// Clang Tools repository
//===----------------------------------------------------------------------===//

Welcome to the repository of extra Clang Tools.  This repository holds tools
that are developed as part of the LLVM compiler infrastructure project and the
Clang frontend.  These tools are kept in a separate "extra" repository to
allow lighter weight checkouts of the core Clang codebase.

All discussion regarding Clang, Clang-based tools, and code in this repository
should be held using the standard Clang forum:
  https://discourse.llvm.org/c/clang

Code review for this tree should take place on the standard Clang patch and
commit lists:
  http://lists.llvm.org/mailman/listinfo/cfe-commits

If you find a bug in these tools, please file it in the LLVM bug tracker:
  https://github.com/llvm/llvm-project/issues/