summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaTemplateInstantiate.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2013-09-27 20:14:12 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2013-09-27 20:14:12 +0000
commit8809a0c95e7aa9e858f455bbb9a3f5a3c4ae96d3 (patch)
tree0902cddbb5d01a0a7cde1d63bbc6827b7a67ab6d /clang/lib/Sema/SemaTemplateInstantiate.cpp
parent23e43cdda610f04bfaec7d43958a1b1a8904113f (diff)
downloadbcm5719-llvm-8809a0c95e7aa9e858f455bbb9a3f5a3c4ae96d3.tar.gz
bcm5719-llvm-8809a0c95e7aa9e858f455bbb9a3f5a3c4ae96d3.zip
Variable templates: handle instantiation of static data member templates
appropriately, especially when they appear within class templates. llvm-svn: 191548
Diffstat (limited to 'clang/lib/Sema/SemaTemplateInstantiate.cpp')
-rw-r--r--clang/lib/Sema/SemaTemplateInstantiate.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaTemplateInstantiate.cpp b/clang/lib/Sema/SemaTemplateInstantiate.cpp
index d85f7e4b1b8..32111bac3a4 100644
--- a/clang/lib/Sema/SemaTemplateInstantiate.cpp
+++ b/clang/lib/Sema/SemaTemplateInstantiate.cpp
@@ -2471,6 +2471,9 @@ Sema::InstantiateClassMembers(SourceLocation PointOfInstantiation,
}
}
} else if (VarDecl *Var = dyn_cast<VarDecl>(*D)) {
+ if (isa<VarTemplateSpecializationDecl>(Var))
+ continue;
+
if (Var->isStaticDataMember()) {
MemberSpecializationInfo *MSInfo = Var->getMemberSpecializationInfo();
assert(MSInfo && "No member specialization information?");
OpenPOWER on IntegriCloud