diff options
author | Matheus Izvekov <mizvekov@gmail.com> | 2025-03-20 11:09:25 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-03-20 11:09:25 -0300 |
commit | 6cd62ad08c974b7d4f7171c66f6567de82bd236f (patch) | |
tree | 259dbf4169ef28a26ddb2663b12beffb51ff789b /clang/lib/Sema/SemaAccess.cpp | |
parent | e6a87da8fe314a009eed769f9737b4b281a06fba (diff) | |
download | llvm-6cd62ad08c974b7d4f7171c66f6567de82bd236f.zip llvm-6cd62ad08c974b7d4f7171c66f6567de82bd236f.tar.gz llvm-6cd62ad08c974b7d4f7171c66f6567de82bd236f.tar.bz2 |
Revert "[clang] improve class type sugar preservation in pointers to members" (#132215)
Reverts llvm/llvm-project#130537
This missed updating lldb, which we didn't notice due to lack of
pre-commit CI.
Diffstat (limited to 'clang/lib/Sema/SemaAccess.cpp')
-rw-r--r-- | clang/lib/Sema/SemaAccess.cpp | 26 |
1 files changed, 8 insertions, 18 deletions
diff --git a/clang/lib/Sema/SemaAccess.cpp b/clang/lib/Sema/SemaAccess.cpp index b77cbdb..4ba46a9 100644 --- a/clang/lib/Sema/SemaAccess.cpp +++ b/clang/lib/Sema/SemaAccess.cpp @@ -1873,20 +1873,21 @@ Sema::AccessResult Sema::CheckAddressOfMemberAccess(Expr *OvlExpr, return CheckAccess(*this, Ovl->getNameLoc(), Entity); } -Sema::AccessResult Sema::CheckBaseClassAccess( - SourceLocation AccessLoc, CXXRecordDecl *Base, CXXRecordDecl *Derived, - const CXXBasePath &Path, unsigned DiagID, - llvm::function_ref<void(PartialDiagnostic &)> SetupPDiag, bool ForceCheck, - bool ForceUnprivileged) { +Sema::AccessResult Sema::CheckBaseClassAccess(SourceLocation AccessLoc, + QualType Base, QualType Derived, + const CXXBasePath &Path, + unsigned DiagID, bool ForceCheck, + bool ForceUnprivileged) { if (!ForceCheck && !getLangOpts().AccessControl) return AR_accessible; if (Path.Access == AS_public) return AR_accessible; - AccessTarget Entity(Context, AccessTarget::Base, Base, Derived, Path.Access); + AccessTarget Entity(Context, AccessTarget::Base, Base->getAsCXXRecordDecl(), + Derived->getAsCXXRecordDecl(), Path.Access); if (DiagID) - SetupPDiag(Entity.setDiag(DiagID)); + Entity.setDiag(DiagID) << Derived << Base; if (ForceUnprivileged) { switch ( @@ -1903,17 +1904,6 @@ Sema::AccessResult Sema::CheckBaseClassAccess( return CheckAccess(*this, AccessLoc, Entity); } -Sema::AccessResult Sema::CheckBaseClassAccess(SourceLocation AccessLoc, - QualType Base, QualType Derived, - const CXXBasePath &Path, - unsigned DiagID, bool ForceCheck, - bool ForceUnprivileged) { - return CheckBaseClassAccess( - AccessLoc, Base->getAsCXXRecordDecl(), Derived->getAsCXXRecordDecl(), - Path, DiagID, [&](PartialDiagnostic &PD) { PD << Derived << Base; }, - ForceCheck, ForceUnprivileged); -} - void Sema::CheckLookupAccess(const LookupResult &R) { assert(getLangOpts().AccessControl && "performing access check without access control"); |