[clang] 78c12d3 - [Sema] Remove unnecessary casts (NFC) (#148338)

via cfe-commits cfe-commits at lists.llvm.org
Sat Jul 12 11:28:30 PDT 2025


Author: Kazu Hirata
Date: 2025-07-12T11:28:26-07:00
New Revision: 78c12d380c369b53416518776ae53c3ba168cf7b

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

LOG: [Sema] Remove unnecessary casts (NFC) (#148338)

NumElts, a member variable of ArrayTypeInfo, is already of Expr *.

Added: 
    

Modified: 
    clang/lib/Sema/SemaExprCXX.cpp
    clang/lib/Sema/SemaType.cpp

Removed: 
    


################################################################################
diff  --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp
index 5e232fbbd590c..2ad0fd1a81a47 100644
--- a/clang/lib/Sema/SemaExprCXX.cpp
+++ b/clang/lib/Sema/SemaExprCXX.cpp
@@ -2021,7 +2021,7 @@ Sema::ActOnCXXNew(SourceLocation StartLoc, bool UseGlobal,
       return ExprError(Diag(Chunk.Loc, diag::err_array_new_needs_size)
         << D.getSourceRange());
 
-    ArraySize = static_cast<Expr*>(Chunk.Arr.NumElts);
+    ArraySize = Chunk.Arr.NumElts;
     D.DropFirstTypeObject();
   }
 
@@ -2032,7 +2032,7 @@ Sema::ActOnCXXNew(SourceLocation StartLoc, bool UseGlobal,
         break;
 
       DeclaratorChunk::ArrayTypeInfo &Array = D.getTypeObject(I).Arr;
-      if (Expr *NumElts = (Expr *)Array.NumElts) {
+      if (Expr *NumElts = Array.NumElts) {
         if (!NumElts->isTypeDependent() && !NumElts->isValueDependent()) {
           // FIXME: GCC permits constant folding here. We should either do so consistently
           // or not do so at all, rather than changing behavior in C++14 onwards.

diff  --git a/clang/lib/Sema/SemaType.cpp b/clang/lib/Sema/SemaType.cpp
index 88aa63d3b9e83..661746731fdcc 100644
--- a/clang/lib/Sema/SemaType.cpp
+++ b/clang/lib/Sema/SemaType.cpp
@@ -4727,7 +4727,7 @@ static TypeSourceInfo *GetFullTypeForDeclarator(TypeProcessingState &state,
         // Build the type anyway.
       }
       DeclaratorChunk::ArrayTypeInfo &ATI = DeclType.Arr;
-      Expr *ArraySize = static_cast<Expr*>(ATI.NumElts);
+      Expr *ArraySize = ATI.NumElts;
       ArraySizeModifier ASM;
 
       // Microsoft property fields can have multiple sizeless array chunks


        


More information about the cfe-commits mailing list