[clang] e11e65f - [CodeGen] Migrate away from PointerUnion::dyn_cast (NFC) (#125336)

via cfe-commits cfe-commits at lists.llvm.org
Sat Feb 1 08:13:45 PST 2025


Author: Kazu Hirata
Date: 2025-02-01T08:13:41-08:00
New Revision: e11e65f08b00a96916ce5ec21bf31d061158829d

URL: https://github.com/llvm/llvm-project/commit/e11e65f08b00a96916ce5ec21bf31d061158829d
DIFF: https://github.com/llvm/llvm-project/commit/e11e65f08b00a96916ce5ec21bf31d061158829d.diff

LOG: [CodeGen] Migrate away from PointerUnion::dyn_cast (NFC) (#125336)

Note that PointerUnion::dyn_cast has been soft deprecated in
PointerUnion.h:

  // FIXME: Replace the uses of is(), get() and dyn_cast() with
  //        isa<T>, cast<T> and the llvm::dyn_cast<T>

Literal migration would result in dyn_cast_if_present (see the
definition of PointerUnion::dyn_cast), but this patch uses dyn_cast
because we expect E to be nonnull.

Added: 
    

Modified: 
    clang/lib/CodeGen/MicrosoftCXXABI.cpp

Removed: 
    


################################################################################
diff  --git a/clang/lib/CodeGen/MicrosoftCXXABI.cpp b/clang/lib/CodeGen/MicrosoftCXXABI.cpp
index 0d53e8cb45fe77..4a2630e83b62db 100644
--- a/clang/lib/CodeGen/MicrosoftCXXABI.cpp
+++ b/clang/lib/CodeGen/MicrosoftCXXABI.cpp
@@ -1996,8 +1996,8 @@ CGCallee MicrosoftCXXABI::getVirtualFunctionPointer(CodeGenFunction &CGF,
 llvm::Value *MicrosoftCXXABI::EmitVirtualDestructorCall(
     CodeGenFunction &CGF, const CXXDestructorDecl *Dtor, CXXDtorType DtorType,
     Address This, DeleteOrMemberCallExpr E, llvm::CallBase **CallOrInvoke) {
-  auto *CE = E.dyn_cast<const CXXMemberCallExpr *>();
-  auto *D = E.dyn_cast<const CXXDeleteExpr *>();
+  auto *CE = dyn_cast<const CXXMemberCallExpr *>(E);
+  auto *D = dyn_cast<const CXXDeleteExpr *>(E);
   assert((CE != nullptr) ^ (D != nullptr));
   assert(CE == nullptr || CE->arg_begin() == CE->arg_end());
   assert(DtorType == Dtor_Deleting || DtorType == Dtor_Complete);


        


More information about the cfe-commits mailing list