diff options
| author | Douglas Gregor <dgregor@apple.com> | 2011-02-24 17:54:50 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2011-02-24 17:54:50 +0000 |
| commit | 869ad45f8f0e9019556463ff0fd9fab3d7127512 (patch) | |
| tree | 12ee87ed78312514cde60e894b5add95a6f67517 /clang/lib/Sema/TreeTransform.h | |
| parent | e721185799a59944f4ee3ff9cf367f51c296c70f (diff) | |
| download | bcm5719-llvm-869ad45f8f0e9019556463ff0fd9fab3d7127512.tar.gz bcm5719-llvm-869ad45f8f0e9019556463ff0fd9fab3d7127512.zip | |
Retain complete source-location information for C++
nested-name-specifiers throughout the parser, and provide a new class
(NestedNameSpecifierLoc) that contains a nested-name-specifier along
with its type-source information.
Right now, this information is completely useless, because we don't
actually store the source-location information anywhere in the
AST. Call this Step 1/N.
llvm-svn: 126391
Diffstat (limited to 'clang/lib/Sema/TreeTransform.h')
| -rw-r--r-- | clang/lib/Sema/TreeTransform.h | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/clang/lib/Sema/TreeTransform.h b/clang/lib/Sema/TreeTransform.h index 1b2822ead7b..fa0c2b97d4e 100644 --- a/clang/lib/Sema/TreeTransform.h +++ b/clang/lib/Sema/TreeTransform.h @@ -759,7 +759,7 @@ public: SourceRange NNSRange, SourceLocation IdLoc) { CXXScopeSpec SS; - SS.Adopt(NNS, NNSRange); + SS.MakeTrivial(SemaRef.Context, NNS, NNSRange); if (NNS->isDependent()) { // If the name is still dependent, just build a new dependent name type. @@ -1252,7 +1252,7 @@ public: const DeclarationNameInfo &NameInfo, TemplateArgumentListInfo *TemplateArgs) { CXXScopeSpec SS; - SS.Adopt(Qualifier, QualifierRange); + SS.MakeTrivial(SemaRef.Context, Qualifier, QualifierRange); // FIXME: loses template args. @@ -1391,7 +1391,7 @@ public: CXXScopeSpec SS; if (Qualifier) { - SS.Adopt(Qualifier, QualifierRange); + SS.MakeTrivial(SemaRef.Context, Qualifier, QualifierRange); } getSema().DefaultFunctionArrayConversion(Base); @@ -1882,7 +1882,7 @@ public: const DeclarationNameInfo &NameInfo, const TemplateArgumentListInfo *TemplateArgs) { CXXScopeSpec SS; - SS.Adopt(NNS, QualifierRange); + SS.MakeTrivial(SemaRef.Context, NNS, QualifierRange); if (TemplateArgs) return getSema().BuildQualifiedTemplateIdExpr(SS, NameInfo, @@ -1967,7 +1967,7 @@ public: const DeclarationNameInfo &MemberNameInfo, const TemplateArgumentListInfo *TemplateArgs) { CXXScopeSpec SS; - SS.Adopt(Qualifier, QualifierRange); + SS.MakeTrivial(SemaRef.Context, Qualifier, QualifierRange); return SemaRef.BuildMemberReferenceExpr(BaseE, BaseType, OperatorLoc, IsArrow, @@ -1990,7 +1990,7 @@ public: LookupResult &R, const TemplateArgumentListInfo *TemplateArgs) { CXXScopeSpec SS; - SS.Adopt(Qualifier, QualifierRange); + SS.MakeTrivial(SemaRef.Context, Qualifier, QualifierRange); return SemaRef.BuildMemberReferenceExpr(BaseE, BaseType, OperatorLoc, IsArrow, @@ -6467,7 +6467,7 @@ TreeTransform<Derived>::TransformCXXPseudoDestructorExpr( // Look for a destructor known with the given name. CXXScopeSpec SS; if (Qualifier) - SS.Adopt(Qualifier, E->getQualifierRange()); + SS.MakeTrivial(SemaRef.Context, Qualifier, E->getQualifierRange()); ParsedType T = SemaRef.getDestructorName(E->getTildeLoc(), *E->getDestroyedTypeIdentifier(), @@ -6550,7 +6550,7 @@ TreeTransform<Derived>::TransformUnresolvedLookupExpr( if (!Qualifier) return ExprError(); - SS.Adopt(Qualifier, Old->getQualifierRange()); + SS.MakeTrivial(SemaRef.Context, Qualifier, Old->getQualifierRange()); } if (Old->getNamingClass()) { @@ -7571,7 +7571,7 @@ TreeTransform<Derived>::RebuildNestedNameSpecifier(NestedNameSpecifier *Prefix, NamedDecl *FirstQualifierInScope) { CXXScopeSpec SS; // FIXME: The source location information is all wrong. - SS.Adopt(Prefix, Range); + SS.MakeTrivial(SemaRef.Context, Prefix, Range); if (SemaRef.BuildCXXNestedNameSpecifier(0, II, /*FIXME:*/Range.getBegin(), /*FIXME:*/Range.getEnd(), ObjectType, false, @@ -7632,7 +7632,7 @@ TreeTransform<Derived>::RebuildTemplateName(NestedNameSpecifier *Qualifier, QualType ObjectType, NamedDecl *FirstQualifierInScope) { CXXScopeSpec SS; - SS.Adopt(Qualifier, QualifierRange); + SS.MakeTrivial(SemaRef.Context, Qualifier, QualifierRange); UnqualifiedId Name; Name.setIdentifier(&II, /*FIXME:*/getDerived().getBaseLocation()); Sema::TemplateTy Template; @@ -7652,7 +7652,7 @@ TreeTransform<Derived>::RebuildTemplateName(NestedNameSpecifier *Qualifier, OverloadedOperatorKind Operator, QualType ObjectType) { CXXScopeSpec SS; - SS.Adopt(Qualifier, SourceRange(getDerived().getBaseLocation())); + SS.MakeTrivial(SemaRef.Context, Qualifier, SourceRange(getDerived().getBaseLocation())); UnqualifiedId Name; SourceLocation SymbolLocations[3]; // FIXME: Bogus location information. Name.setOperatorFunctionId(/*FIXME:*/getDerived().getBaseLocation(), @@ -7766,7 +7766,7 @@ TreeTransform<Derived>::RebuildCXXPseudoDestructorExpr(Expr *Base, PseudoDestructorTypeStorage Destroyed) { CXXScopeSpec SS; if (Qualifier) - SS.Adopt(Qualifier, QualifierRange); + SS.MakeTrivial(SemaRef.Context, Qualifier, QualifierRange); QualType BaseType = Base->getType(); if (Base->isTypeDependent() || Destroyed.getIdentifier() || |

