summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
diff options
context:
space:
mode:
authorSam McCall <sam.mccall@gmail.com>2018-01-12 14:51:47 +0000
committerSam McCall <sam.mccall@gmail.com>2018-01-12 14:51:47 +0000
commitbb2cf63b324846ee74fc785d0f49b8b29e105297 (patch)
tree2dae45ec75b165bb4da32e729c86ae2b2841b4b6 /clang/lib/Frontend
parentf4374f087f4440f2b25cf2b69b089c5add35b73c (diff)
downloadbcm5719-llvm-bb2cf63b324846ee74fc785d0f49b8b29e105297.tar.gz
bcm5719-llvm-bb2cf63b324846ee74fc785d0f49b8b29e105297.zip
[CodeComplete] Add an option to omit results from the preamble.
Summary: Enumerating the contents of a namespace or global scope will omit any decls that aren't already loaded, instead of deserializing them from the PCH. This allows a fast hybrid code completion where symbols from headers are provided by an external index. (Sema already exposes the information needed to do a reasonabl job of filtering them). Clangd plans to implement this hybrid. This option is just a hint - callers still need to postfilter results if they want to *avoid* completing decls outside the main file. Reviewers: bkramer, ilya-biryukov Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D41989 llvm-svn: 322371
Diffstat (limited to 'clang/lib/Frontend')
-rw-r--r--clang/lib/Frontend/ASTUnit.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp
index 1160df15a92..74abbf3b725 100644
--- a/clang/lib/Frontend/ASTUnit.cpp
+++ b/clang/lib/Frontend/ASTUnit.cpp
@@ -2068,6 +2068,7 @@ void ASTUnit::CodeComplete(
CodeCompleteOpts.IncludeCodePatterns = IncludeCodePatterns;
CodeCompleteOpts.IncludeGlobals = CachedCompletionResults.empty();
CodeCompleteOpts.IncludeBriefComments = IncludeBriefComments;
+ CodeCompleteOpts.LoadExternal = Consumer.loadExternal();
assert(IncludeBriefComments == this->IncludeBriefCommentsInCodeCompletion);
OpenPOWER on IntegriCloud