summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2013-12-04 00:56:29 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2013-12-04 00:56:29 +0000
commit8f65806b35e7bc476b3a84a694b9cedb57eba1e6 (patch)
tree0d9376eaec9461f7babc215e75bb48106212964b /clang/lib/Sema
parent0e7f6da674c2870bc69fdd2a6b3fcaf49bbdd5f5 (diff)
downloadbcm5719-llvm-8f65806b35e7bc476b3a84a694b9cedb57eba1e6.tar.gz
bcm5719-llvm-8f65806b35e7bc476b3a84a694b9cedb57eba1e6.zip
Fix crash if a dependent template-id was assumed to be a type but instantiates
to a variable template specialization. llvm-svn: 196337
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r--clang/lib/Sema/SemaTemplate.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp
index eb10758bc16..3e55ec90ad0 100644
--- a/clang/lib/Sema/SemaTemplate.cpp
+++ b/clang/lib/Sema/SemaTemplate.cpp
@@ -1959,7 +1959,8 @@ QualType Sema::CheckTemplateIdType(TemplateName Name,
TemplateArgs);
TemplateDecl *Template = Name.getAsTemplateDecl();
- if (!Template || isa<FunctionTemplateDecl>(Template)) {
+ if (!Template || isa<FunctionTemplateDecl>(Template) ||
+ isa<VarTemplateDecl>(Template)) {
// We might have a substituted template template parameter pack. If so,
// build a template specialization type for it.
if (Name.getAsSubstTemplateTemplateParmPack())
OpenPOWER on IntegriCloud