[llvm] b436488 - [ADT] Use a C++17 fold expression in BitVector.h (NFC) (#161626)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 2 09:26:57 PDT 2025
Author: Kazu Hirata
Date: 2025-10-02T09:26:53-07:00
New Revision: b43648818768620b615ee06517d58b6fc5d39583
URL: https://github.com/llvm/llvm-project/commit/b43648818768620b615ee06517d58b6fc5d39583
DIFF: https://github.com/llvm/llvm-project/commit/b43648818768620b615ee06517d58b6fc5d39583.diff
LOG: [ADT] Use a C++17 fold expression in BitVector.h (NFC) (#161626)
This patch simplifies the assertion by replacing the std::all_of check
with a more direct C++17 fold expression.
Added:
Modified:
llvm/include/llvm/ADT/BitVector.h
Removed:
################################################################################
diff --git a/llvm/include/llvm/ADT/BitVector.h b/llvm/include/llvm/ADT/BitVector.h
index 83350e6e45846..9e81a4b735e7f 100644
--- a/llvm/include/llvm/ADT/BitVector.h
+++ b/llvm/include/llvm/ADT/BitVector.h
@@ -570,10 +570,7 @@ class BitVector {
template <class F, class... ArgTys>
static BitVector &apply(F &&f, BitVector &Out, BitVector const &Arg,
ArgTys const &...Args) {
- assert(llvm::all_of(
- std::initializer_list<unsigned>{Args.size()...},
- [&Arg](auto const &BV) { return Arg.size() == BV; }) &&
- "consistent sizes");
+ assert(((Arg.size() == Args.size()) && ...) && "consistent sizes");
Out.resize(Arg.size());
for (size_type I = 0, E = Arg.Bits.size(); I != E; ++I)
Out.Bits[I] = f(Arg.Bits[I], Args.Bits[I]...);
More information about the llvm-commits
mailing list