llvm-project/clang-tools-extra
Eric Liu 485074f987 [clangd] Ignore sema code complete callback with recovery context.
Summary:
Sema code complete in the recovery mode is generally useless. For many
cases, sema first completes in recovery context and then recovers to more useful
context, in which it's favorable to ignore results from recovery (as results are
often bad e.g. all builtin symbols and top-level symbols). There is also case
where only sema would fail to recover e.g. completions in excluded #if block.
Sema would try to give results, but the results are often useless (see the updated
excluded #if block test).

Reviewers: sammccall, ilya-biryukov

Subscribers: MaskRay, jkorous, cfe-commits

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

llvm-svn: 336801
2018-07-11 13:15:31 +00:00
..
change-namespace [change-namespace] Don't match a function call/ref multiple times. 2018-03-15 14:45:02 +00:00
clang-apply-replacements [clang-apply-replacements] Make clang-apply-replacements installable 2018-04-21 15:01:33 +00:00
clang-doc Fix MSVC 'not all control paths return a value' warning. NFCI. 2018-06-06 19:31:39 +00:00
clang-move [FileSystem] Split up the OpenFlags enumeration. 2018-06-07 19:58:58 +00:00
clang-query Fix for LLVM r326109 2018-02-26 20:21:30 +00:00
clang-reorder-fields [CMake] Use PRIVATE in target_link_libraries for executables 2017-12-05 21:49:56 +00:00
clang-tidy Use ExprMutationAnalyzer in performance-for-range-copy 2018-07-10 22:51:06 +00:00
clang-tidy-vs Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
clangd [clangd] Ignore sema code complete callback with recovery context. 2018-07-11 13:15:31 +00:00
docs [clangd] Mark "Document Symbols" as implemented in the docs 2018-07-09 14:34:07 +00:00
include-fixer [clang-tools-extra] Update uses of DEBUG macro to LLVM_DEBUG. 2018-05-15 16:37:45 +00:00
modularize Reland "[tools] Updating PPCallbacks::InclusionDirective calls" 2018-05-10 19:13:14 +00:00
pp-trace Reland "[tools] Updating PPCallbacks::InclusionDirective calls" 2018-05-10 19:13:14 +00:00
test Use ExprMutationAnalyzer in performance-for-range-copy 2018-07-10 22:51:06 +00:00
tool-template [CMake] Use PRIVATE in target_link_libraries for executables 2017-12-05 21:49:56 +00:00
unittests [clangd] Ignore sema code complete callback with recovery context. 2018-07-11 13:15:31 +00:00
.arcconfig [clang-tools-extra] Set up .arcconfig to point to new Diffusion CTE repository 2017-11-27 15:58:25 +00:00
.gitignore
CMakeLists.txt [clang-doc] Reland "[clang-doc] Setup clang-doc frontend framework" 2018-03-22 23:34:46 +00:00
CODE_OWNERS.TXT Updating the code owners list. 2015-09-02 20:00:41 +00:00
LICENSE.TXT Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
README.txt Update references to new lists.llvm.org mailing lists. 2015-08-05 03:56:44 +00:00

README.txt

//===----------------------------------------------------------------------===//
// 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.

This repository is only intended to be checked out inside of a full LLVM+Clang
tree, and in the 'tools/extra' subdirectory of the Clang checkout.

All discussion regarding Clang, Clang-based tools, and code in this repository
should be held using the standard Clang mailing lists:
  http://lists.llvm.org/mailman/listinfo/cfe-dev

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:
  http://llvm.org/bugs/