diff options
Diffstat (limited to 'lib/Sema/TreeTransform.h')
-rw-r--r-- | lib/Sema/TreeTransform.h | 42 |
1 files changed, 10 insertions, 32 deletions
diff --git a/lib/Sema/TreeTransform.h b/lib/Sema/TreeTransform.h index 416f480e57..a972572c94 100644 --- a/lib/Sema/TreeTransform.h +++ b/lib/Sema/TreeTransform.h @@ -265,7 +265,6 @@ public: /// alternate behavior. NestedNameSpecifier *TransformNestedNameSpecifier(NestedNameSpecifier *NNS, SourceRange Range, - bool MayBePseudoDestructor, QualType ObjectType = QualType(), NamedDecl *FirstQualifierInScope = 0); @@ -556,7 +555,6 @@ public: NestedNameSpecifier *RebuildNestedNameSpecifier(NestedNameSpecifier *Prefix, SourceRange Range, IdentifierInfo &II, - bool MayBePseudoDestructor, QualType ObjectType, NamedDecl *FirstQualifierInScope); @@ -579,8 +577,7 @@ public: NestedNameSpecifier *RebuildNestedNameSpecifier(NestedNameSpecifier *Prefix, SourceRange Range, bool TemplateKW, - QualType T, - bool MayBePseudoDestructor); + QualType T); /// \brief Build a new template name given a nested name specifier, a flag /// indicating whether the "template" keyword was provided, and the template @@ -1712,7 +1709,6 @@ template<typename Derived> NestedNameSpecifier * TreeTransform<Derived>::TransformNestedNameSpecifier(NestedNameSpecifier *NNS, SourceRange Range, - bool MayBePseudoDestructor, QualType ObjectType, NamedDecl *FirstQualifierInScope) { if (!NNS) @@ -1722,7 +1718,6 @@ TreeTransform<Derived>::TransformNestedNameSpecifier(NestedNameSpecifier *NNS, NestedNameSpecifier *Prefix = NNS->getPrefix(); if (Prefix) { Prefix = getDerived().TransformNestedNameSpecifier(Prefix, Range, - false, ObjectType, FirstQualifierInScope); if (!Prefix) @@ -1744,7 +1739,6 @@ TreeTransform<Derived>::TransformNestedNameSpecifier(NestedNameSpecifier *NNS, return getDerived().RebuildNestedNameSpecifier(Prefix, Range, *NNS->getAsIdentifier(), - MayBePseudoDestructor, ObjectType, FirstQualifierInScope); @@ -1780,8 +1774,7 @@ TreeTransform<Derived>::TransformNestedNameSpecifier(NestedNameSpecifier *NNS, return getDerived().RebuildNestedNameSpecifier(Prefix, Range, NNS->getKind() == NestedNameSpecifier::TypeSpecWithTemplate, - T, - MayBePseudoDestructor); + T); } } @@ -1833,7 +1826,6 @@ TreeTransform<Derived>::TransformTemplateName(TemplateName Name, NestedNameSpecifier *NNS = getDerived().TransformNestedNameSpecifier(QTN->getQualifier(), /*FIXME:*/SourceRange(getDerived().getBaseLocation()), - false, ObjectType); if (!NNS) return TemplateName(); @@ -1861,7 +1853,6 @@ TreeTransform<Derived>::TransformTemplateName(TemplateName Name, NestedNameSpecifier *NNS = getDerived().TransformNestedNameSpecifier(DTN->getQualifier(), /*FIXME:*/SourceRange(getDerived().getBaseLocation()), - false, ObjectType); if (!NNS && DTN->getQualifier()) return TemplateName(); @@ -2921,7 +2912,6 @@ TreeTransform<Derived>::TransformQualifiedNameType(TypeLocBuilder &TLB, NestedNameSpecifier *NNS = getDerived().TransformNestedNameSpecifier(T->getQualifier(), SourceRange(), - false, ObjectType); if (!NNS) return QualType(); @@ -2956,7 +2946,7 @@ QualType TreeTransform<Derived>::TransformTypenameType(TypeLocBuilder &TLB, NestedNameSpecifier *NNS = getDerived().TransformNestedNameSpecifier(T->getQualifier(), SR, - false, ObjectType); + ObjectType); if (!NNS) return QualType(); @@ -3592,8 +3582,7 @@ TreeTransform<Derived>::TransformDeclRefExpr(DeclRefExpr *E) { NestedNameSpecifier *Qualifier = 0; if (E->getQualifier()) { Qualifier = getDerived().TransformNestedNameSpecifier(E->getQualifier(), - E->getQualifierRange(), - false); + E->getQualifierRange()); if (!Qualifier) return SemaRef.ExprError(); } @@ -3802,8 +3791,7 @@ TreeTransform<Derived>::TransformMemberExpr(MemberExpr *E) { if (E->hasQualifier()) { Qualifier = getDerived().TransformNestedNameSpecifier(E->getQualifier(), - E->getQualifierRange(), - false); + E->getQualifierRange()); if (Qualifier == 0) return SemaRef.ExprError(); } @@ -4685,7 +4673,6 @@ TreeTransform<Derived>::TransformCXXPseudoDestructorExpr( NestedNameSpecifier *Qualifier = getDerived().TransformNestedNameSpecifier(E->getQualifier(), E->getQualifierRange(), - true, ObjectType); if (E->getQualifier() && !Qualifier) return SemaRef.ExprError(); @@ -4786,8 +4773,7 @@ TreeTransform<Derived>::TransformUnresolvedLookupExpr( NestedNameSpecifier *Qualifier = 0; if (Old->getQualifier()) { Qualifier = getDerived().TransformNestedNameSpecifier(Old->getQualifier(), - Old->getQualifierRange(), - false); + Old->getQualifierRange()); if (!Qualifier) return SemaRef.ExprError(); @@ -4843,8 +4829,7 @@ TreeTransform<Derived>::TransformDependentScopeDeclRefExpr( DependentScopeDeclRefExpr *E) { NestedNameSpecifier *NNS = getDerived().TransformNestedNameSpecifier(E->getQualifier(), - E->getQualifierRange(), - false); + E->getQualifierRange()); if (!NNS) return SemaRef.ExprError(); @@ -5093,11 +5078,8 @@ TreeTransform<Derived>::TransformCXXDependentScopeMemberExpr( NestedNameSpecifier *Qualifier = 0; if (E->getQualifier()) { - bool MayBePseudoDestructor - = E->getMember().getNameKind() == DeclarationName::CXXDestructorName; Qualifier = getDerived().TransformNestedNameSpecifier(E->getQualifier(), E->getQualifierRange(), - MayBePseudoDestructor, ObjectType, FirstQualifierInScope); if (!Qualifier) @@ -5172,8 +5154,7 @@ TreeTransform<Derived>::TransformUnresolvedMemberExpr(UnresolvedMemberExpr *Old) if (Old->getQualifier()) { Qualifier = getDerived().TransformNestedNameSpecifier(Old->getQualifier(), - Old->getQualifierRange(), - false); + Old->getQualifierRange()); if (Qualifier == 0) return SemaRef.ExprError(); } @@ -5598,7 +5579,6 @@ NestedNameSpecifier * TreeTransform<Derived>::RebuildNestedNameSpecifier(NestedNameSpecifier *Prefix, SourceRange Range, IdentifierInfo &II, - bool MayBePseudoDestructor, QualType ObjectType, NamedDecl *FirstQualifierInScope) { CXXScopeSpec SS; @@ -5608,7 +5588,6 @@ TreeTransform<Derived>::RebuildNestedNameSpecifier(NestedNameSpecifier *Prefix, return static_cast<NestedNameSpecifier *>( SemaRef.BuildCXXNestedNameSpecifier(0, SS, Range.getEnd(), Range.getEnd(), II, - MayBePseudoDestructor, ObjectType, FirstQualifierInScope, false, false)); @@ -5627,9 +5606,8 @@ NestedNameSpecifier * TreeTransform<Derived>::RebuildNestedNameSpecifier(NestedNameSpecifier *Prefix, SourceRange Range, bool TemplateKW, - QualType T, - bool MayBePseudoDestructor) { - if (MayBePseudoDestructor || T->isDependentType() || T->isRecordType() || + QualType T) { + if (T->isDependentType() || T->isRecordType() || (SemaRef.getLangOptions().CPlusPlus0x && T->isEnumeralType())) { assert(!T.hasLocalQualifiers() && "Can't get cv-qualifiers here"); return NestedNameSpecifier::Create(SemaRef.Context, Prefix, TemplateKW, |