From 141656644959ea43b61868ef16e3d2782d40ea51 Mon Sep 17 00:00:00 2001 From: Matheus Izvekov Date: Fri, 21 Mar 2025 10:54:24 -0300 Subject: Reland: [clang] NFC: Clear some uses of MemberPointerType::getClass (#132317) Relands Original PR: https://github.com/llvm/llvm-project/pull/131965 Addresses https://github.com/llvm/llvm-project/pull/131965#issuecomment-2741619498 * Fixes isIncompleteType for injected classes This clears up some uses of getClass on MemberPointerType when equivalent uses of getMostRecentCXXRecordDecl would be just as simple or simpler. This is split-off from a larger patch which removes getClass, in order to facilitate review. --- clang/lib/CodeGen/CGClass.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'clang/lib/CodeGen/CGClass.cpp') diff --git a/clang/lib/CodeGen/CGClass.cpp b/clang/lib/CodeGen/CGClass.cpp index fa69caa41936..98c93b5bb488 100644 --- a/clang/lib/CodeGen/CGClass.cpp +++ b/clang/lib/CodeGen/CGClass.cpp @@ -161,10 +161,9 @@ CodeGenFunction::EmitCXXMemberDataPointerAddress(const Expr *E, Address base, QualType memberType = memberPtrType->getPointeeType(); CharUnits memberAlign = CGM.getNaturalTypeAlignment(memberType, BaseInfo, TBAAInfo); - memberAlign = - CGM.getDynamicOffsetAlignment(base.getAlignment(), - memberPtrType->getClass()->getAsCXXRecordDecl(), - memberAlign); + memberAlign = CGM.getDynamicOffsetAlignment( + base.getAlignment(), memberPtrType->getMostRecentCXXRecordDecl(), + memberAlign); return Address(ptr, ConvertTypeForMem(memberPtrType->getPointeeType()), memberAlign); } -- cgit v1.2.3