summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/ODRHash.cpp
diff options
context:
space:
mode:
authorRichard Trieu <rtrieu@google.com>2017-05-19 22:35:41 +0000
committerRichard Trieu <rtrieu@google.com>2017-05-19 22:35:41 +0000
commitcc6893736bf5fdd975efc03130a0f05648801d15 (patch)
tree52c790a94f8944838be593cd3c658aaf03f30a2e /clang/lib/AST/ODRHash.cpp
parentbf6b3b1564f1846c5c729b582b4bc3f97d946770 (diff)
downloadbcm5719-llvm-cc6893736bf5fdd975efc03130a0f05648801d15.tar.gz
bcm5719-llvm-cc6893736bf5fdd975efc03130a0f05648801d15.zip
[ODRHash] Revert r303450 to fix buildbot
r303450 [ODRHash] Support TemplateName and TemplateArgument llvm-svn: 303459
Diffstat (limited to 'clang/lib/AST/ODRHash.cpp')
-rw-r--r--clang/lib/AST/ODRHash.cpp92
1 files changed, 2 insertions, 90 deletions
diff --git a/clang/lib/AST/ODRHash.cpp b/clang/lib/AST/ODRHash.cpp
index 080b6acd7da..24371db64d0 100644
--- a/clang/lib/AST/ODRHash.cpp
+++ b/clang/lib/AST/ODRHash.cpp
@@ -110,88 +110,8 @@ void ODRHash::AddNestedNameSpecifier(const NestedNameSpecifier *NNS) {
}
}
-void ODRHash::AddTemplateName(TemplateName Name) {
- const auto Kind = Name.getKind();
- ID.AddInteger(Kind);
- AddBoolean(Name.isDependent());
- AddBoolean(Name.isInstantiationDependent());
- switch (Kind) {
- case TemplateName::Template:
- AddDecl(Name.getAsTemplateDecl());
- break;
- case TemplateName::OverloadedTemplate: {
- const auto *Storage = Name.getAsOverloadedTemplate();
- ID.AddInteger(Storage->size());
- for (const auto *ND : *Storage) {
- AddDecl(ND);
- }
- break;
- }
- case TemplateName::QualifiedTemplate: {
- const auto *QTN = Name.getAsQualifiedTemplateName();
- AddNestedNameSpecifier(QTN->getQualifier());
- AddBoolean(QTN->hasTemplateKeyword());
- AddDecl(QTN->getDecl());
- break;
- }
- case TemplateName::DependentTemplate: {
- const auto *DTN = Name.getAsDependentTemplateName();
- AddBoolean(DTN->isIdentifier());
- if (DTN->isIdentifier()) {
- AddIdentifierInfo(DTN->getIdentifier());
- } else {
- ID.AddInteger(DTN->getOperator());
- }
- break;
- }
- case TemplateName::SubstTemplateTemplateParm: {
- const auto *Storage = Name.getAsSubstTemplateTemplateParm();
- AddDecl(Storage->getParameter());
- AddTemplateName(Storage->getReplacement());
- break;
- }
- case TemplateName::SubstTemplateTemplateParmPack: {
- const auto *Storage = Name.getAsSubstTemplateTemplateParmPack();
- AddDecl(Storage->getParameterPack());
- AddTemplateArgument(Storage->getArgumentPack());
- break;
- }
- }
-}
-
-void ODRHash::AddTemplateArgument(TemplateArgument TA) {
- const auto Kind = TA.getKind();
- ID.AddInteger(Kind);
- switch (Kind) {
- case TemplateArgument::Null:
- llvm_unreachable("Require valid TemplateArgument");
- case TemplateArgument::Type:
- AddQualType(TA.getAsType());
- break;
- case TemplateArgument::Declaration:
- AddDecl(TA.getAsDecl());
- break;
- case TemplateArgument::NullPtr:
- AddQualType(TA.getNullPtrType());
- break;
- case TemplateArgument::Integral:
- TA.getAsIntegral().Profile(ID);
- AddQualType(TA.getIntegralType());
- break;
- case TemplateArgument::Template:
- case TemplateArgument::TemplateExpansion:
- AddTemplateName(TA.getAsTemplateOrTemplatePattern());
- break;
- case TemplateArgument::Expression:
- AddStmt(TA.getAsExpr());
- break;
- case TemplateArgument::Pack:
- ID.AddInteger(TA.pack_size());
- for (auto SubTA : TA.pack_elements())
- AddTemplateArgument(SubTA);
- break;
- }
-}
+void ODRHash::AddTemplateName(TemplateName Name) {}
+void ODRHash::AddTemplateArgument(TemplateArgument TA) {}
void ODRHash::AddTemplateParameterList(const TemplateParameterList *TPL) {}
void ODRHash::clear() {
@@ -572,14 +492,6 @@ public:
AddQualType(T->getNamedType());
VisitTypeWithKeyword(T);
}
-
- void VisitTemplateSpecializationType(const TemplateSpecializationType *T) {
- ID.AddInteger(T->getNumArgs());
- for (const auto &TA : T->template_arguments()) {
- Hash.AddTemplateArgument(TA);
- }
- Hash.AddTemplateName(T->getTemplateName());
- }
};
void ODRHash::AddType(const Type *T) {
OpenPOWER on IntegriCloud