[clang-tools-extra] [clang-tidy][NFC] change patterns 'anyOf(..., anything())' to 'optionally(...)' (PR #143558)

2025-06-14 Thread LLVM Continuous Integration via cfe-commits

llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder 
`clang-aarch64-sve2-vla-2stage` running on `linaro-g4-01` while building 
`clang-tools-extra` at step 12 "ninja check 2".

Full details are available at: 
https://lab.llvm.org/buildbot/#/builders/199/builds/4068


Here is the relevant piece of the build log for the reference

```
Step 12 (ninja check 2) failure: stage 2 checked (failure)
...
[172/174] Building CXX object 
flang-rt/unittests/Runtime/CMakeFiles/RuntimeTests.dir/Reduction.cpp.o
[173/174] Building CXX object 
flang-rt/unittests/Runtime/CMakeFiles/RuntimeTests.dir/Transformational.cpp.o
[174/174] Linking CXX executable flang-rt/unittests/Runtime/RuntimeTests
[691/1391] Linking CXX executable tools/clang/unittests/Format/FormatTests
clang++: warning: argument unused during compilation: '-mllvm 
-scalable-vectorization=preferred' [-Wunused-command-line-argument]
clang++: warning: argument unused during compilation: '-mllvm 
-treat-scalable-fixed-error-as-warning=false' [-Wunused-command-line-argument]
[754/1391] Linking CXX executable unittests/ADT/ADTTests
clang++: warning: argument unused during compilation: '-mllvm 
-scalable-vectorization=preferred' [-Wunused-command-line-argument]
clang++: warning: argument unused during compilation: '-mllvm 
-treat-scalable-fixed-error-as-warning=false' [-Wunused-command-line-argument]
[779/1391] Linking CXX executable 
tools/flang/unittests/Frontend/FlangFrontendTests
FAILED: tools/flang/unittests/Frontend/FlangFrontendTests 
: && 
/home/tcwg-buildbot/worker/clang-aarch64-sve2-vla-2stage/stage1.install/bin/clang++
 -mcpu=neoverse-v2 -mllvm -scalable-vectorization=preferred -mllvm 
-treat-scalable-fixed-error-as-warning=false -fPIC -fno-semantic-interposition 
-fvisibility-inlines-hidden -Werror=date-time 
-Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter 
-Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic 
-Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough 
-Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor 
-Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion 
-Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color 
-ffunction-sections -fdata-sections -Wno-deprecated-copy -Wno-string-conversion 
-Wno-ctad-maybe-unsupported -Wno-unused-command-line-argument 
-Wstring-conversion   -Wcovered-switch-default -Wno-nested-anon-types 
-Xclang -fno-pch-timestamp -O3 -DNDEBUG -fuse-ld=lld -Wl,--color-diagnostics
-Wl,--gc-sections 
tools/flang/unittests/Frontend/CMakeFiles/FlangFrontendTests.dir/CodeGenActionTest.cpp.o
 
tools/flang/unittests/Frontend/CMakeFiles/FlangFrontendTests.dir/CompilerInstanceTest.cpp.o
 
tools/flang/unittests/Frontend/CMakeFiles/FlangFrontendTests.dir/FrontendActionTest.cpp.o
 -o tools/flang/unittests/Frontend/FlangFrontendTests  
lib/libLLVMAArch64CodeGen.a  lib/libLLVMAArch64AsmParser.a  
lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Disassembler.a  
lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMAMDGPUCodeGen.a 
 lib/libLLVMAMDGPUAsmParser.a  lib/libLLVMAMDGPUDesc.a  
lib/libLLVMAMDGPUDisassembler.a  lib/libLLVMAMDGPUInfo.a  
lib/libLLVMAMDGPUUtils.a  lib/libLLVMARMCodeGen.a  lib/libLLVMARMAsmParser.a  
lib/libLLVMARMDesc.a  lib/libLLVMARMDisassembler.a  lib/libLLVMARMInfo.a  
lib/libLLVMARMUtils.a  lib/libLLVMAVRCodeGen.a  lib/libLLVMAVRAsmParser.a  
lib/libLLVMAVRDesc.a  lib/libLLVMAVRDisassembler.a  lib/libLLVMAVRInfo.a  
lib/libLLVMBPFCodeGen.a  lib/libLLVMBPFAsmParser.a  lib/libLLVMBPFDesc.a  
lib/libLLVMBPFDisassembler.a  lib/libLLVMBPFInfo.a  lib/libLLVMHexagonCodeGen.a 
 lib/libLLVMHexagonAsmParser.a  lib/libLLVMHexagonDesc.a  
lib/libLLVMHexagonDisassembler.a  lib/libLLVMHexagonInfo.a  
lib/libLLVMLanaiCodeGen.a  lib/libLLVMLanaiAsmParser.a  lib/libLLVMLanaiDesc.a  
lib/libLLVMLanaiDisassembler.a  lib/libLLVMLanaiInfo.a  
lib/libLLVMLoongArchCodeGen.a  lib/libLLVMLoongArchAsmParser.a  
lib/libLLVMLoongArchDesc.a  lib/libLLVMLoongArchDisassembler.a  
lib/libLLVMLoongArchInfo.a  lib/libLLVMMipsCodeGen.a  
lib/libLLVMMipsAsmParser.a  lib/libLLVMMipsDesc.a  
lib/libLLVMMipsDisassembler.a  lib/libLLVMMipsInfo.a  
lib/libLLVMMSP430CodeGen.a  lib/libLLVMMSP430AsmParser.a  
lib/libLLVMMSP430Desc.a  lib/libLLVMMSP430Disassembler.a  
lib/libLLVMMSP430Info.a  lib/libLLVMNVPTXCodeGen.a  lib/libLLVMNVPTXDesc.a  
lib/libLLVMNVPTXInfo.a  lib/libLLVMPowerPCCodeGen.a  
lib/libLLVMPowerPCAsmParser.a  lib/libLLVMPowerPCDesc.a  
lib/libLLVMPowerPCDisassembler.a  lib/libLLVMPowerPCInfo.a  
lib/libLLVMRISCVCodeGen.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMRISCVDesc.a  
lib/libLLVMRISCVDisassembler.a  lib/libLLVMRISCVInfo.a  
lib/libLLVMSparcCodeGen.a  lib/libLLVMSparcAsmParser.a  lib/libLLVMSparcDesc.a  
lib/libLLVMSparcDisassembler.a  lib/libLLVMSparcInfo.a  
lib/libLLVMSPIRVCodeGen.a  lib/libLLVMSPIRVDesc.a  lib/libLLVMSPIRVInfo.a  
lib/libLLVMSystemZCodeGen.a  lib/libLLVMSystemZAsmParser.a  
lib/libLLV

[clang-tools-extra] [clang-tidy][NFC] change patterns 'anyOf(..., anything())' to 'optionally(...)' (PR #143558)

2025-06-14 Thread Baranov Victor via cfe-commits

https://github.com/vbvictor closed 
https://github.com/llvm/llvm-project/pull/143558
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang-tools-extra] [clang-tidy][NFC] change patterns 'anyOf(..., anything())' to 'optionally(...)' (PR #143558)

2025-06-10 Thread via cfe-commits

llvmbot wrote:




@llvm/pr-subscribers-clang-tools-extra

Author: Baranov Victor (vbvictor)


Changes

Writing `optionally()` instead of `anyOf(..., anything())` lowers code size and 
gives the author's intention better.

---
Full diff: https://github.com/llvm/llvm-project/pull/143558.diff


5 Files Affected:

- (modified) 
clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp (+10-11) 
- (modified) clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp 
(+5-7) 
- (modified) clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp (+5-8) 
- (modified) clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.cpp 
(+6-7) 
- (modified) 
clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp (+2-2) 


``diff
diff --git 
a/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp 
b/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
index bedecb60569e8..203170d55f694 100644
--- a/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
+++ b/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
@@ -702,17 +702,16 @@ void 
NotNullTerminatedResultCheck::registerMatchers(MatchFinder *Finder) {
 return hasArgument(
 CC.LengthPos,
 allOf(
-anyOf(
-ignoringImpCasts(integerLiteral().bind(WrongLengthExprName)),
-allOf(unless(hasDefinition(SizeOfCharExpr)),
-  allOf(CC.WithIncrease
-? ignoringImpCasts(hasDefinition(HasIncOp))
-: ignoringImpCasts(allOf(
-  unless(hasDefinition(HasIncOp)),
-  
anyOf(hasDefinition(binaryOperator().bind(
-UnknownLengthName)),
-hasDefinition(anything(),
-AnyOfWrongLengthInit))),
+anyOf(ignoringImpCasts(integerLiteral().bind(WrongLengthExprName)),
+  allOf(unless(hasDefinition(SizeOfCharExpr)),
+allOf(CC.WithIncrease
+  ? ignoringImpCasts(hasDefinition(HasIncOp))
+  : ignoringImpCasts(
+allOf(unless(hasDefinition(HasIncOp)),
+  hasDefinition(optionally(
+  binaryOperator().bind(
+  UnknownLengthName),
+  AnyOfWrongLengthInit))),
 expr().bind(LengthExprName)));
   };
 
diff --git a/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp 
b/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
index 2b2acfdf5b08e..ed39568ea554a 100644
--- a/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
+++ b/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
@@ -24,14 +24,12 @@ void ExceptionBaseclassCheck::registerMatchers(MatchFinder 
*Finder) {
   isSameOrDerivedFrom(hasName("::std::exception")),
   // This condition is always true, but will bind to the
   // template value if the thrown type is templated.
-  anyOf(has(expr(
-hasType(substTemplateTypeParmType().bind("templ_type",
-anything()),
+  optionally(has(
+  expr(hasType(substTemplateTypeParmType().bind("templ_type"),
   // Bind to the declaration of the type of the value that
-  // is thrown. 'anything()' is necessary to always succeed
-  // in the 'eachOf' because builtin types are not
-  // 'namedDecl'.
-  eachOf(has(expr(hasType(namedDecl().bind("decl", anything()))
+  // is thrown. 'optionally' is necessary because builtin types
+  // are not 'namedDecl'.
+  optionally(has(expr(hasType(namedDecl().bind("decl"))
   .bind("bad_throw"),
   this);
 }
diff --git a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp 
b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
index faff1c17fc61e..37fbd8c0d725f 100644
--- a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
+++ b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
@@ -38,8 +38,7 @@ void StaticAssertCheck::registerMatchers(MatchFinder *Finder) 
{
   binaryOperator(
   hasAnyOperatorName("&&", "=="),
   
hasEitherOperand(ignoringImpCasts(stringLiteral().bind("assertMSG"))),
-  anyOf(binaryOperator(hasEitherOperand(IsAlwaysFalseWithCast)),
-anything()))
+  optionally(binaryOperator(hasEitherOperand(IsAlwaysFalseWithCast
   .bind("assertExprRoot"),
   IsAlwaysFalse);
   auto NonConstexprFunctionCall =
@@ -52,12 +51,10 @@ void StaticAssertCheck::registerMatchers(MatchFinder 
*Finder) {

[clang-tools-extra] [clang-tidy][NFC] change patterns 'anyOf(..., anything())' to 'optionally(...)' (PR #143558)

2025-06-10 Thread via cfe-commits

llvmbot wrote:




@llvm/pr-subscribers-clang-tidy

Author: Baranov Victor (vbvictor)


Changes

Writing `optionally()` instead of `anyOf(..., anything())` lowers code size and 
gives the author's intention better.

---
Full diff: https://github.com/llvm/llvm-project/pull/143558.diff


5 Files Affected:

- (modified) 
clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp (+10-11) 
- (modified) clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp 
(+5-7) 
- (modified) clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp (+5-8) 
- (modified) clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.cpp 
(+6-7) 
- (modified) 
clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp (+2-2) 


``diff
diff --git 
a/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp 
b/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
index bedecb60569e8..203170d55f694 100644
--- a/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
+++ b/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
@@ -702,17 +702,16 @@ void 
NotNullTerminatedResultCheck::registerMatchers(MatchFinder *Finder) {
 return hasArgument(
 CC.LengthPos,
 allOf(
-anyOf(
-ignoringImpCasts(integerLiteral().bind(WrongLengthExprName)),
-allOf(unless(hasDefinition(SizeOfCharExpr)),
-  allOf(CC.WithIncrease
-? ignoringImpCasts(hasDefinition(HasIncOp))
-: ignoringImpCasts(allOf(
-  unless(hasDefinition(HasIncOp)),
-  
anyOf(hasDefinition(binaryOperator().bind(
-UnknownLengthName)),
-hasDefinition(anything(),
-AnyOfWrongLengthInit))),
+anyOf(ignoringImpCasts(integerLiteral().bind(WrongLengthExprName)),
+  allOf(unless(hasDefinition(SizeOfCharExpr)),
+allOf(CC.WithIncrease
+  ? ignoringImpCasts(hasDefinition(HasIncOp))
+  : ignoringImpCasts(
+allOf(unless(hasDefinition(HasIncOp)),
+  hasDefinition(optionally(
+  binaryOperator().bind(
+  UnknownLengthName),
+  AnyOfWrongLengthInit))),
 expr().bind(LengthExprName)));
   };
 
diff --git a/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp 
b/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
index 2b2acfdf5b08e..ed39568ea554a 100644
--- a/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
+++ b/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
@@ -24,14 +24,12 @@ void ExceptionBaseclassCheck::registerMatchers(MatchFinder 
*Finder) {
   isSameOrDerivedFrom(hasName("::std::exception")),
   // This condition is always true, but will bind to the
   // template value if the thrown type is templated.
-  anyOf(has(expr(
-hasType(substTemplateTypeParmType().bind("templ_type",
-anything()),
+  optionally(has(
+  expr(hasType(substTemplateTypeParmType().bind("templ_type"),
   // Bind to the declaration of the type of the value that
-  // is thrown. 'anything()' is necessary to always succeed
-  // in the 'eachOf' because builtin types are not
-  // 'namedDecl'.
-  eachOf(has(expr(hasType(namedDecl().bind("decl", anything()))
+  // is thrown. 'optionally' is necessary because builtin types
+  // are not 'namedDecl'.
+  optionally(has(expr(hasType(namedDecl().bind("decl"))
   .bind("bad_throw"),
   this);
 }
diff --git a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp 
b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
index faff1c17fc61e..37fbd8c0d725f 100644
--- a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
+++ b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
@@ -38,8 +38,7 @@ void StaticAssertCheck::registerMatchers(MatchFinder *Finder) 
{
   binaryOperator(
   hasAnyOperatorName("&&", "=="),
   
hasEitherOperand(ignoringImpCasts(stringLiteral().bind("assertMSG"))),
-  anyOf(binaryOperator(hasEitherOperand(IsAlwaysFalseWithCast)),
-anything()))
+  optionally(binaryOperator(hasEitherOperand(IsAlwaysFalseWithCast
   .bind("assertExprRoot"),
   IsAlwaysFalse);
   auto NonConstexprFunctionCall =
@@ -52,12 +51,10 @@ void StaticAssertCheck::registerMatchers(MatchFinder 
*Finder) {
   auto

[clang-tools-extra] [clang-tidy][NFC] change patterns 'anyOf(..., anything())' to 'optionally(...)' (PR #143558)

2025-06-10 Thread Baranov Victor via cfe-commits

https://github.com/vbvictor created 
https://github.com/llvm/llvm-project/pull/143558

Writing `optionally()` instead of `anyOf(..., anything())` lowers code size and 
gives the author's intention better.

>From 177faff965a73efdd22d460c38ff61004c065392 Mon Sep 17 00:00:00 2001
From: Victor Baranov 
Date: Tue, 10 Jun 2025 18:46:45 +0300
Subject: [PATCH] [clang-tidy][NFC] change patterns 'anyOf(..., anything())' to
 'optionally(...)'

---
 .../bugprone/NotNullTerminatedResultCheck.cpp | 21 +--
 .../hicpp/ExceptionBaseclassCheck.cpp | 12 +--
 .../clang-tidy/misc/StaticAssertCheck.cpp | 13 +---
 .../modernize/UseBoolLiteralsCheck.cpp| 13 ++--
 .../ImplicitBoolConversionCheck.cpp   |  4 ++--
 5 files changed, 28 insertions(+), 35 deletions(-)

diff --git 
a/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp 
b/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
index bedecb60569e8..203170d55f694 100644
--- a/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
+++ b/clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
@@ -702,17 +702,16 @@ void 
NotNullTerminatedResultCheck::registerMatchers(MatchFinder *Finder) {
 return hasArgument(
 CC.LengthPos,
 allOf(
-anyOf(
-ignoringImpCasts(integerLiteral().bind(WrongLengthExprName)),
-allOf(unless(hasDefinition(SizeOfCharExpr)),
-  allOf(CC.WithIncrease
-? ignoringImpCasts(hasDefinition(HasIncOp))
-: ignoringImpCasts(allOf(
-  unless(hasDefinition(HasIncOp)),
-  
anyOf(hasDefinition(binaryOperator().bind(
-UnknownLengthName)),
-hasDefinition(anything(),
-AnyOfWrongLengthInit))),
+anyOf(ignoringImpCasts(integerLiteral().bind(WrongLengthExprName)),
+  allOf(unless(hasDefinition(SizeOfCharExpr)),
+allOf(CC.WithIncrease
+  ? ignoringImpCasts(hasDefinition(HasIncOp))
+  : ignoringImpCasts(
+allOf(unless(hasDefinition(HasIncOp)),
+  hasDefinition(optionally(
+  binaryOperator().bind(
+  UnknownLengthName),
+  AnyOfWrongLengthInit))),
 expr().bind(LengthExprName)));
   };
 
diff --git a/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp 
b/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
index 2b2acfdf5b08e..ed39568ea554a 100644
--- a/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
+++ b/clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
@@ -24,14 +24,12 @@ void ExceptionBaseclassCheck::registerMatchers(MatchFinder 
*Finder) {
   isSameOrDerivedFrom(hasName("::std::exception")),
   // This condition is always true, but will bind to the
   // template value if the thrown type is templated.
-  anyOf(has(expr(
-hasType(substTemplateTypeParmType().bind("templ_type",
-anything()),
+  optionally(has(
+  expr(hasType(substTemplateTypeParmType().bind("templ_type"),
   // Bind to the declaration of the type of the value that
-  // is thrown. 'anything()' is necessary to always succeed
-  // in the 'eachOf' because builtin types are not
-  // 'namedDecl'.
-  eachOf(has(expr(hasType(namedDecl().bind("decl", anything()))
+  // is thrown. 'optionally' is necessary because builtin types
+  // are not 'namedDecl'.
+  optionally(has(expr(hasType(namedDecl().bind("decl"))
   .bind("bad_throw"),
   this);
 }
diff --git a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp 
b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
index faff1c17fc61e..37fbd8c0d725f 100644
--- a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
+++ b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
@@ -38,8 +38,7 @@ void StaticAssertCheck::registerMatchers(MatchFinder *Finder) 
{
   binaryOperator(
   hasAnyOperatorName("&&", "=="),
   
hasEitherOperand(ignoringImpCasts(stringLiteral().bind("assertMSG"))),
-  anyOf(binaryOperator(hasEitherOperand(IsAlwaysFalseWithCast)),
-anything()))
+  optionally(binaryOperator(hasEitherOperand(IsAlwaysFalseWithCast
   .bind("assertExprRoot"),
   IsAlwaysFalse);
   auto NonConstexprFunctionCall =
@@ -52,12 +51,10 @@ void StaticAsser