Skip to content

Commit 864752c

Browse files
committed
[AST] QualifiedTemplateName::getTemplateDecl cleanup.
This is a followup cleanup of 1234b1c Differential Revision: https://reviews.llvm.org/D124238
1 parent 8dbc6b5 commit 864752c

File tree

5 files changed

+6
-19
lines changed

5 files changed

+6
-19
lines changed

clang/include/clang/AST/TemplateName.h

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -439,13 +439,6 @@ class QualifiedTemplateName : public llvm::FoldingSetNode {
439439
/// Return the underlying template name.
440440
TemplateName getUnderlyingTemplate() const { return UnderlyingTemplate; }
441441

442-
/// The template declaration to which this qualified name
443-
/// refers.
444-
/// FIXME: remove this and use getUnderlyingTemplate() instead.
445-
TemplateDecl *getTemplateDecl() const {
446-
return UnderlyingTemplate.getAsTemplateDecl();
447-
}
448-
449442
void Profile(llvm::FoldingSetNodeID &ID) {
450443
Profile(ID, getQualifier(), hasTemplateKeyword(), UnderlyingTemplate);
451444
}

clang/lib/AST/ItaniumMangle.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2204,9 +2204,6 @@ void CXXNameMangler::mangleType(TemplateName TN) {
22042204

22052205
switch (TN.getKind()) {
22062206
case TemplateName::QualifiedTemplate:
2207-
TD = TN.getAsQualifiedTemplateName()->getTemplateDecl();
2208-
goto HaveDecl;
2209-
22102207
case TemplateName::UsingTemplate:
22112208
case TemplateName::Template:
22122209
TD = TN.getAsTemplateDecl();

clang/lib/AST/TemplateName.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ TemplateDecl *TemplateName::getAsTemplateDecl() const {
115115
}
116116

117117
if (QualifiedTemplateName *QTN = getAsQualifiedTemplateName())
118-
return QTN->getTemplateDecl();
118+
return QTN->getUnderlyingTemplate().getAsTemplateDecl();
119119

120120
if (SubstTemplateTemplateParmStorage *sub = getAsSubstTemplateTemplateParm())
121121
return sub->getReplacement().getAsTemplateDecl();
@@ -273,14 +273,15 @@ void TemplateName::print(raw_ostream &OS, const PrintingPolicy &Policy,
273273
if (Qual == Qualified::Fully &&
274274
getDependence() !=
275275
TemplateNameDependenceScope::DependentInstantiation) {
276-
QTN->getTemplateDecl()->printQualifiedName(OS, Policy);
276+
QTN->getUnderlyingTemplate().getAsTemplateDecl()->printQualifiedName(
277+
OS, Policy);
277278
return;
278279
}
279280
if (Qual == Qualified::AsWritten)
280281
QTN->getQualifier()->print(OS, Policy);
281282
if (QTN->hasTemplateKeyword())
282283
OS << "template ";
283-
OS << *QTN->getTemplateDecl();
284+
OS << *QTN->getUnderlyingTemplate().getAsTemplateDecl();
284285
} else if (DependentTemplateName *DTN = getAsDependentTemplateName()) {
285286
if (Qual == Qualified::AsWritten && DTN->getQualifier())
286287
DTN->getQualifier()->print(OS, Policy);

clang/lib/Sema/TreeTransform.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4280,7 +4280,7 @@ TreeTransform<Derived>::TransformTemplateName(CXXScopeSpec &SS,
42804280
NamedDecl *FirstQualifierInScope,
42814281
bool AllowInjectedClassName) {
42824282
if (QualifiedTemplateName *QTN = Name.getAsQualifiedTemplateName()) {
4283-
TemplateDecl *Template = QTN->getTemplateDecl();
4283+
TemplateDecl *Template = QTN->getUnderlyingTemplate().getAsTemplateDecl();
42844284
assert(Template && "qualified template name must refer to a template");
42854285

42864286
TemplateDecl *TransTemplate

clang/tools/libclang/CIndex.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1443,6 +1443,7 @@ bool CursorVisitor::VisitTemplateName(TemplateName Name, SourceLocation Loc) {
14431443
switch (Name.getKind()) {
14441444
case TemplateName::Template:
14451445
case TemplateName::UsingTemplate:
1446+
case TemplateName::QualifiedTemplate: // FIXME: Visit nested-name-specifier.
14461447
return Visit(MakeCursorTemplateRef(Name.getAsTemplateDecl(), Loc, TU));
14471448

14481449
case TemplateName::OverloadedTemplate:
@@ -1460,11 +1461,6 @@ bool CursorVisitor::VisitTemplateName(TemplateName Name, SourceLocation Loc) {
14601461
// FIXME: Visit nested-name-specifier.
14611462
return false;
14621463

1463-
case TemplateName::QualifiedTemplate:
1464-
// FIXME: Visit nested-name-specifier.
1465-
return Visit(MakeCursorTemplateRef(
1466-
Name.getAsQualifiedTemplateName()->getTemplateDecl(), Loc, TU));
1467-
14681464
case TemplateName::SubstTemplateTemplateParm:
14691465
return Visit(MakeCursorTemplateRef(
14701466
Name.getAsSubstTemplateTemplateParm()->getParameter(), Loc, TU));

0 commit comments

Comments
 (0)