Restore the invariant that a nested-name-specifier can only contain
class types, dependent types, and namespaces. I had previously
weakened this invariant while working on parsing pseudo-destructor
expressions, but recent work in that area has made these changes
unnecessary.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97112 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/Sema.h b/lib/Sema/Sema.h
index 1bc084c..2ed4bf6 100644
--- a/lib/Sema/Sema.h
+++ b/lib/Sema/Sema.h
@@ -2225,8 +2225,7 @@
virtual CXXScopeTy *ActOnCXXGlobalScopeSpecifier(Scope *S,
SourceLocation CCLoc);
- bool isAcceptableNestedNameSpecifier(NamedDecl *SD,
- bool MayBePseudoDestructor = false);
+ bool isAcceptableNestedNameSpecifier(NamedDecl *SD);
NamedDecl *FindFirstQualifierInScope(Scope *S, NestedNameSpecifier *NNS);
virtual bool isNonTypeNestedNameSpecifier(Scope *S, const CXXScopeSpec &SS,
@@ -2239,7 +2238,6 @@
SourceLocation IdLoc,
SourceLocation CCLoc,
IdentifierInfo &II,
- bool MayBePseudoDestructor,
QualType ObjectType,
NamedDecl *ScopeLookupResult,
bool EnteringContext,
@@ -2250,14 +2248,12 @@
SourceLocation IdLoc,
SourceLocation CCLoc,
IdentifierInfo &II,
- bool MayBePseudoDestructor,
TypeTy *ObjectType,
bool EnteringContext);
virtual bool IsInvalidUnlessNestedName(Scope *S,
const CXXScopeSpec &SS,
IdentifierInfo &II,
- bool MayBePseudoDestructor,
TypeTy *ObjectType,
bool EnteringContext);
@@ -2273,8 +2269,7 @@
const CXXScopeSpec &SS,
TypeTy *Type,
SourceRange TypeRange,
- SourceLocation CCLoc,
- bool MayBePseudoDestructor);
+ SourceLocation CCLoc);
virtual bool ShouldEnterDeclaratorScope(Scope *S, const CXXScopeSpec &SS);