diff options
| author | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-12-04 00:56:29 +0000 | 
|---|---|---|
| committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-12-04 00:56:29 +0000 | 
| commit | 8f65806b35e7bc476b3a84a694b9cedb57eba1e6 (patch) | |
| tree | 0d9376eaec9461f7babc215e75bb48106212964b /clang/lib/Sema | |
| parent | 0e7f6da674c2870bc69fdd2a6b3fcaf49bbdd5f5 (diff) | |
| download | bcm5719-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.cpp | 3 | 
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()) | 

