summaryrefslogtreecommitdiffstats
path: root/clang/lib/Serialization/ASTWriter.cpp
diff options
context:
space:
mode:
authorJohn McCall <rjmccall@apple.com>2011-06-30 08:33:18 +0000
committerJohn McCall <rjmccall@apple.com>2011-06-30 08:33:18 +0000
commitd9dfe3a1f8af68fef298666e50685c30d6f6a974 (patch)
tree6b7b151ea8d1496c0bb3a2ea932212a5840c0a9e /clang/lib/Serialization/ASTWriter.cpp
parentc91f09d73a82a270e2a6a8d19bf67aa4f71d01ee (diff)
downloadbcm5719-llvm-d9dfe3a1f8af68fef298666e50685c30d6f6a974.tar.gz
bcm5719-llvm-d9dfe3a1f8af68fef298666e50685c30d6f6a974.zip
Preserve that a TemplateName was arrived at by substituting
for a template template parameter. Uses to follow. I've also made the uniquing of SubstTemplateTemplateParmPacks use a ContextualFoldingSet as a minor space efficiency. llvm-svn: 134137
Diffstat (limited to 'clang/lib/Serialization/ASTWriter.cpp')
-rw-r--r--clang/lib/Serialization/ASTWriter.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp
index d616c840008..fb1795e6a45 100644
--- a/clang/lib/Serialization/ASTWriter.cpp
+++ b/clang/lib/Serialization/ASTWriter.cpp
@@ -3694,6 +3694,14 @@ void ASTWriter::AddTemplateName(TemplateName Name, RecordDataImpl &Record) {
Record.push_back(DepT->getOperator());
break;
}
+
+ case TemplateName::SubstTemplateTemplateParm: {
+ SubstTemplateTemplateParmStorage *subst
+ = Name.getAsSubstTemplateTemplateParm();
+ AddDeclRef(subst->getParameter(), Record);
+ AddTemplateName(subst->getReplacement(), Record);
+ break;
+ }
case TemplateName::SubstTemplateTemplateParmPack: {
SubstTemplateTemplateParmPackStorage *SubstPack
OpenPOWER on IntegriCloud