[clang] [Clang] Warning as error for fold expressions over comparison operators (PR #136836)

via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 23 02:58:25 PDT 2025


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff HEAD~1 HEAD --extensions cpp,h -- clang/lib/Sema/TreeTransform.h clang/test/Parser/cxx1z-fold-expressions.cpp clang/test/SemaTemplate/cxx1z-fold-expressions.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/clang/lib/Sema/TreeTransform.h b/clang/lib/Sema/TreeTransform.h
index 0d04f534e..a59e4a628 100644
--- a/clang/lib/Sema/TreeTransform.h
+++ b/clang/lib/Sema/TreeTransform.h
@@ -16437,12 +16437,14 @@ TreeTransform<Derived>::TransformCXXFoldExpr(CXXFoldExpr *E) {
       } else {
         Result = getDerived().RebuildBinaryOperator(E->getEllipsisLoc(),
                                                     E->getOperator(), LHS, RHS);
-        if(!WarnedOnComparison && Result.isUsable()) {
-            if(auto * BO = dyn_cast<BinaryOperator>(Result.get()); BO && BO->isComparisonOp()) {
-                WarnedOnComparison = true;
-                SemaRef.Diag(BO->getBeginLoc(), diag::warn_comparison_in_fold_expression)
-                        << BO->getOpcodeStr();
-            }
+        if (!WarnedOnComparison && Result.isUsable()) {
+          if (auto *BO = dyn_cast<BinaryOperator>(Result.get());
+              BO && BO->isComparisonOp()) {
+            WarnedOnComparison = true;
+            SemaRef.Diag(BO->getBeginLoc(),
+                         diag::warn_comparison_in_fold_expression)
+                << BO->getOpcodeStr();
+          }
         }
       }
     } else

``````````

</details>


https://github.com/llvm/llvm-project/pull/136836


More information about the cfe-commits mailing list