[clang] [clang] Use llvm::is_contained instead of llvm::all_of (NFC) (PR #145843)
via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 25 23:00:12 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang-analysis
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
llvm::is_contained is shorter than llvm::all_of plus a lambda.
---
Full diff: https://github.com/llvm/llvm-project/pull/145843.diff
7 Files Affected:
- (modified) clang/lib/AST/ExprCXX.cpp (+1-1)
- (modified) clang/lib/AST/StmtOpenACC.cpp (+1-1)
- (modified) clang/lib/Analysis/FlowSensitive/CNFFormula.cpp (+2-3)
- (modified) clang/lib/Basic/Attributes.cpp (+2-4)
- (modified) clang/lib/Driver/ToolChains/Arch/LoongArch.cpp (+5-5)
- (modified) clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp (+1-2)
- (modified) clang/utils/TableGen/ClangDiagnosticsEmitter.cpp (+1-2)
``````````diff
diff --git a/clang/lib/AST/ExprCXX.cpp b/clang/lib/AST/ExprCXX.cpp
index 063eb1738a046..764e20a54dc89 100644
--- a/clang/lib/AST/ExprCXX.cpp
+++ b/clang/lib/AST/ExprCXX.cpp
@@ -1208,7 +1208,7 @@ CXXConstructExpr::CXXConstructExpr(
Stmt **TrailingArgs = getTrailingArgs();
llvm::copy(Args, TrailingArgs);
- assert(llvm::all_of(Args, [](const Stmt *Arg) { return Arg != nullptr; }));
+ assert(!llvm::is_contained(Args, nullptr));
// CXXTemporaryObjectExpr does this itself after setting its TypeSourceInfo.
if (SC == CXXConstructExprClass)
diff --git a/clang/lib/AST/StmtOpenACC.cpp b/clang/lib/AST/StmtOpenACC.cpp
index bc5072187b891..07e3de8eeb00d 100644
--- a/clang/lib/AST/StmtOpenACC.cpp
+++ b/clang/lib/AST/StmtOpenACC.cpp
@@ -209,7 +209,7 @@ OpenACCWaitConstruct *OpenACCWaitConstruct::Create(
ArrayRef<Expr *> QueueIdExprs, SourceLocation RParenLoc, SourceLocation End,
ArrayRef<const OpenACCClause *> Clauses) {
- assert(llvm::all_of(QueueIdExprs, [](Expr *E) { return E != nullptr; }));
+ assert(!llvm::is_contained(QueueIdExprs, nullptr));
void *Mem = C.Allocate(
OpenACCWaitConstruct::totalSizeToAlloc<Expr *, OpenACCClause *>(
diff --git a/clang/lib/Analysis/FlowSensitive/CNFFormula.cpp b/clang/lib/Analysis/FlowSensitive/CNFFormula.cpp
index 39c46d73e9dda..d067e4ee6b001 100644
--- a/clang/lib/Analysis/FlowSensitive/CNFFormula.cpp
+++ b/clang/lib/Analysis/FlowSensitive/CNFFormula.cpp
@@ -49,8 +49,7 @@ struct CNFFormulaBuilder {
// Contains literals of the simplified clause.
llvm::SmallVector<Literal> Simplified;
for (auto L : Literals) {
- assert(L != NullLit &&
- llvm::all_of(Simplified, [L](Literal S) { return S != L; }));
+ assert(L != NullLit && !llvm::is_contained(Simplified, L));
auto X = var(L);
if (trueVars.contains(X)) { // X must be true
if (isPosLit(L))
@@ -103,7 +102,7 @@ CNFFormula::CNFFormula(Variable LargestVar)
}
void CNFFormula::addClause(ArrayRef<Literal> lits) {
- assert(llvm::all_of(lits, [](Literal L) { return L != NullLit; }));
+ assert(!llvm::is_contained(lits, NullLit));
if (lits.empty())
KnownContradictory = true;
diff --git a/clang/lib/Basic/Attributes.cpp b/clang/lib/Basic/Attributes.cpp
index 004e5209a44a7..81b186f844b8a 100644
--- a/clang/lib/Basic/Attributes.cpp
+++ b/clang/lib/Basic/Attributes.cpp
@@ -260,8 +260,7 @@ static constexpr const char *AttrScopeSpellingList[] = {
std::optional<StringRef>
AttributeCommonInfo::tryGetCorrectedScopeName(StringRef ScopeName) const {
if (ScopeName.size() > 0 &&
- llvm::none_of(AttrScopeSpellingList,
- [&](const char *S) { return S == ScopeName; })) {
+ !llvm::is_contained(AttrScopeSpellingList, ScopeName)) {
SimpleTypoCorrection STC(ScopeName);
for (const auto &Scope : AttrScopeSpellingList)
STC.add(Scope);
@@ -275,8 +274,7 @@ AttributeCommonInfo::tryGetCorrectedScopeName(StringRef ScopeName) const {
std::optional<StringRef> AttributeCommonInfo::tryGetCorrectedAttrName(
StringRef ScopeName, StringRef AttrName, const TargetInfo &Target,
const LangOptions &LangOpts) const {
- if (llvm::none_of(AttrSpellingList,
- [&](const char *A) { return A == AttrName; })) {
+ if (!llvm::is_contained(AttrSpellingList, AttrName)) {
SimpleTypoCorrection STC(AttrName);
for (const auto &Attr : AttrSpellingList)
STC.add(Attr);
diff --git a/clang/lib/Driver/ToolChains/Arch/LoongArch.cpp b/clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
index 33a655870b01b..ee7b0d10c24ba 100644
--- a/clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
+++ b/clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
@@ -214,16 +214,16 @@ void loongarch::getLoongArchTargetFeatures(const Driver &D,
if (MSIMD == "lsx") {
// Option -msimd=lsx depends on 64-bit FPU.
// -m*-float and -mfpu=none/0/32 conflict with -msimd=lsx.
- if (llvm::find(Features, "-d") != Features.end())
+ if (llvm::is_contained(Features, "-d"))
D.Diag(diag::err_drv_loongarch_wrong_fpu_width) << /*LSX*/ 0;
else
Features.push_back("+lsx");
} else if (MSIMD == "lasx") {
// Option -msimd=lasx depends on 64-bit FPU and LSX.
// -m*-float, -mfpu=none/0/32 and -mno-lsx conflict with -msimd=lasx.
- if (llvm::find(Features, "-d") != Features.end())
+ if (llvm::is_contained(Features, "-d"))
D.Diag(diag::err_drv_loongarch_wrong_fpu_width) << /*LASX*/ 1;
- else if (llvm::find(Features, "-lsx") != Features.end())
+ else if (llvm::is_contained(Features, "-lsx"))
D.Diag(diag::err_drv_loongarch_invalid_simd_option_combination);
// The command options do not contain -mno-lasx.
@@ -232,9 +232,9 @@ void loongarch::getLoongArchTargetFeatures(const Driver &D,
Features.push_back("+lasx");
}
} else if (MSIMD == "none") {
- if (llvm::find(Features, "+lsx") != Features.end())
+ if (llvm::is_contained(Features, "+lsx"))
Features.push_back("-lsx");
- if (llvm::find(Features, "+lasx") != Features.end())
+ if (llvm::is_contained(Features, "+lasx"))
Features.push_back("-lasx");
} else {
D.Diag(diag::err_drv_loongarch_invalid_msimd_EQ) << MSIMD;
diff --git a/clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp b/clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
index 683d9070b1dcf..1cdb5397aa577 100644
--- a/clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
+++ b/clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
@@ -299,8 +299,7 @@ TEST(DependencyScanner, ScanDepsWithModuleLookup) {
ScanTool.getDependencyFile(CommandLine, CWD).moveInto(DepFile),
llvm::Failed());
- EXPECT_TRUE(llvm::find(InterceptFS->StatPaths, OtherPath) ==
- InterceptFS->StatPaths.end());
+ EXPECT_TRUE(!llvm::is_contained(InterceptFS->StatPaths, OtherPath));
EXPECT_EQ(InterceptFS->ReadFiles, std::vector<std::string>{"test.m"});
}
diff --git a/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp b/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
index b28cb2c09ac5c..17078e2bc1505 100644
--- a/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
+++ b/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
@@ -1657,8 +1657,7 @@ void clang::EmitClangDiagsEnums(const RecordKeeper &Records, raw_ostream &OS,
llvm::SmallVector<std::string> EnumeratorNames;
for (auto &Enumerator : Enumeration.second) {
- if (llvm::find(EnumeratorNames, Enumerator.second) !=
- EnumeratorNames.end())
+ if (llvm::is_contained(EnumeratorNames, Enumerator.second))
PrintError(&R,
"Duplicate enumerator name '" + Enumerator.second + "'");
EnumeratorNames.push_back(Enumerator.second);
``````````
</details>
https://github.com/llvm/llvm-project/pull/145843
More information about the cfe-commits
mailing list