diff options
author | Erik Verbruggen <erikjv@me.com> | 2017-08-22 10:25:48 +0000 |
---|---|---|
committer | Erik Verbruggen <erikjv@me.com> | 2017-08-22 10:25:48 +0000 |
commit | 1ca8bbb078bd5920d6ca154c05ab2dcbf53a7a8a (patch) | |
tree | 8a69ecb0227267f2536683c1453cc1fb1e84204b /clang/lib/Frontend/ASTUnit.cpp | |
parent | cb5155bf6d6702f420a696ea87c86a590d28b84a (diff) | |
download | llvm-1ca8bbb078bd5920d6ca154c05ab2dcbf53a7a8a.zip llvm-1ca8bbb078bd5920d6ca154c05ab2dcbf53a7a8a.tar.gz llvm-1ca8bbb078bd5920d6ca154c05ab2dcbf53a7a8a.tar.bz2 |
Fix templated type alias completion when using global completion cache
When we have enabled cache for global completions we did not have
diagnostics for Bar and could not complete Ba as in provided code
example.
template <typename T>
struct Foo { T member; };
template<typename T> using Bar = Foo<T>;
int main() {
Ba
}
Patch by Ivan Donchevskii!
Differential Revision: https://reviews.llvm.org/D35355
llvm-svn: 311442
Diffstat (limited to 'clang/lib/Frontend/ASTUnit.cpp')
-rw-r--r-- | clang/lib/Frontend/ASTUnit.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp index 07f847c..a4a1a5f 100644 --- a/clang/lib/Frontend/ASTUnit.cpp +++ b/clang/lib/Frontend/ASTUnit.cpp @@ -243,7 +243,8 @@ static unsigned getDeclShowContexts(const NamedDecl *ND, uint64_t Contexts = 0; if (isa<TypeDecl>(ND) || isa<ObjCInterfaceDecl>(ND) || - isa<ClassTemplateDecl>(ND) || isa<TemplateTemplateParmDecl>(ND)) { + isa<ClassTemplateDecl>(ND) || isa<TemplateTemplateParmDecl>(ND) || + isa<TypeAliasTemplateDecl>(ND)) { // Types can appear in these contexts. if (LangOpts.CPlusPlus || !isa<TagDecl>(ND)) Contexts |= (1LL << CodeCompletionContext::CCC_TopLevel) |