[clang] ee72e2b - [Sema] Remove unused isNonTypeNestedNameSpecifier
Kazu Hirata via cfe-commits
cfe-commits at lists.llvm.org
Tue Jun 13 00:24:57 PDT 2023
Author: Kazu Hirata
Date: 2023-06-13T00:24:40-07:00
New Revision: ee72e2b3939a82a29345c7e53929a3a769a78735
URL: https://github.com/llvm/llvm-project/commit/ee72e2b3939a82a29345c7e53929a3a769a78735
DIFF: https://github.com/llvm/llvm-project/commit/ee72e2b3939a82a29345c7e53929a3a769a78735.diff
LOG: [Sema] Remove unused isNonTypeNestedNameSpecifier
The last use was removed by:
commit 04f131da0b19abff611773c03be9bafb53c753ce
Author: Richard Smith <richard at metafoo.co.uk>
Date: Fri Jan 24 15:14:25 2020 -0800
Differential Revision: https://reviews.llvm.org/D152634
Added:
Modified:
clang/include/clang/Sema/Sema.h
clang/lib/Sema/SemaCXXScopeSpec.cpp
Removed:
################################################################################
diff --git a/clang/include/clang/Sema/Sema.h b/clang/include/clang/Sema/Sema.h
index 7d54452e72a3c..d088aea401c68 100644
--- a/clang/include/clang/Sema/Sema.h
+++ b/clang/include/clang/Sema/Sema.h
@@ -6994,9 +6994,6 @@ class Sema final {
}
};
- bool isNonTypeNestedNameSpecifier(Scope *S, CXXScopeSpec &SS,
- NestedNameSpecInfo &IdInfo);
-
bool BuildCXXNestedNameSpecifier(Scope *S,
NestedNameSpecInfo &IdInfo,
bool EnteringContext,
diff --git a/clang/lib/Sema/SemaCXXScopeSpec.cpp b/clang/lib/Sema/SemaCXXScopeSpec.cpp
index b11f4f1b7cdd9..f37ba5cf4c109 100644
--- a/clang/lib/Sema/SemaCXXScopeSpec.cpp
+++ b/clang/lib/Sema/SemaCXXScopeSpec.cpp
@@ -415,51 +415,6 @@ NamedDecl *Sema::FindFirstQualifierInScope(Scope *S, NestedNameSpecifier *NNS) {
return nullptr;
}
-bool Sema::isNonTypeNestedNameSpecifier(Scope *S, CXXScopeSpec &SS,
- NestedNameSpecInfo &IdInfo) {
- QualType ObjectType = GetTypeFromParser(IdInfo.ObjectType);
- LookupResult Found(*this, IdInfo.Identifier, IdInfo.IdentifierLoc,
- LookupNestedNameSpecifierName);
-
- // Determine where to perform name lookup
- DeclContext *LookupCtx = nullptr;
- bool isDependent = false;
- if (!ObjectType.isNull()) {
- // This nested-name-specifier occurs in a member access expression, e.g.,
- // x->B::f, and we are looking into the type of the object.
- assert(!SS.isSet() && "ObjectType and scope specifier cannot coexist");
- LookupCtx = computeDeclContext(ObjectType);
- isDependent = ObjectType->isDependentType();
- } else if (SS.isSet()) {
- // This nested-name-specifier occurs after another nested-name-specifier,
- // so long into the context associated with the prior nested-name-specifier.
- LookupCtx = computeDeclContext(SS, false);
- isDependent = isDependentScopeSpecifier(SS);
- Found.setContextRange(SS.getRange());
- }
-
- if (LookupCtx) {
- // Perform "qualified" name lookup into the declaration context we
- // computed, which is either the type of the base of a member access
- // expression or the declaration context associated with a prior
- // nested-name-specifier.
-
- // The declaration context must be complete.
- if (!LookupCtx->isDependentContext() &&
- RequireCompleteDeclContext(SS, LookupCtx))
- return false;
-
- LookupQualifiedName(Found, LookupCtx);
- } else if (isDependent) {
- return false;
- } else {
- LookupName(Found, S);
- }
- Found.suppressDiagnostics();
-
- return Found.getAsSingle<NamespaceDecl>();
-}
-
namespace {
// Callback to only accept typo corrections that can be a valid C++ member
More information about the cfe-commits
mailing list