https://github.com/GS-GOAT updated 
https://github.com/llvm/llvm-project/pull/127211

>From 5f46f9c8e29dde7d6096f4e00094b4e615874ed4 Mon Sep 17 00:00:00 2001
From: GS-GOAT <86884129+gs-g...@users.noreply.github.com>
Date: Fri, 14 Feb 2025 14:58:50 +0530
Subject: [PATCH] Fixing the logic issue in
 TransformTypos::TransformDesignatedInitExpr #126113

-Transforming Indices: For array designators, transform the index expression
and update ExprChanged if it's modified.
-Correct Initializer Check: Compare the transformed initializer against the
original to accurately track changes.
-Single Initializer Transformation: The initializer is processed once, not
per designator, as each DesignatedInitExpr has one initializer.

Fixes #126113
---
 clang/lib/Sema/TreeTransform.h | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/clang/lib/Sema/TreeTransform.h b/clang/lib/Sema/TreeTransform.h
index fc1e3f7d58f4d..479ff1da7e76c 100644
--- a/clang/lib/Sema/TreeTransform.h
+++ b/clang/lib/Sema/TreeTransform.h
@@ -13665,15 +13665,15 @@ 
TreeTransform<Derived>::TransformDesignatedInitExpr(DesignatedInitExpr *E) {
     }
 
     if (D.isArrayDesignator()) {
-      ExprResult Index = getDerived().TransformExpr(E->getArrayIndex(D));
-      if (Index.isInvalid())
+      ExprResult NewIndex = getDerived().TransformExpr(E->getArrayIndex(D));
+      if (NewIndex.isInvalid())
         return ExprError();
 
-      Desig.AddDesignator(
-          Designator::CreateArrayDesignator(Index.get(), D.getLBracketLoc()));
+      Desig.AddDesignator(Designator::CreateArrayDesignator(
+          NewIndex.get(), D.getLBracketLoc()));
 
-      ExprChanged = ExprChanged || Init.get() != E->getArrayIndex(D);
-      ArrayExprs.push_back(Index.get());
+      ExprChanged = ExprChanged || NewIndex.get() != E->getArrayIndex(D);
+      ArrayExprs.push_back(NewIndex.get());
       continue;
     }
 

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to