
1. Iterators. There was a PR from a user for that (https://github.com/boostorg/dynamic_bitset/pull/73), but I reckon that it was a little naive.
DynamicBitset doesn't provide iterators, and doesn't pretend to be a container, because of the proxy reference type, which prevents iterators to satisfy the standard requirements. IOW, even if it provided iterators, they wouldn't be usable with the standard algorithms.
Is this still the case with C++20 ranges? AFAIK the forward iterator requirements were made less strict to support such cases. In gcc 15, the following static_assert succeeds: static_assert(std::forward_iterator<std::vector<bool>::iterator>); And the iterators/ranges seem usable in standard algorithms: https://godbolt.org/z/6P5MYTKG6