[libcxx-commits] [libcxx] [libc++][ranges] LWG3610: `iota_view::size` sometimes rejects integer-class types (PR #155169)

A. Jiang via libcxx-commits libcxx-commits at lists.llvm.org
Sun Aug 24 16:51:22 PDT 2025


frederick-vs-ja wrote:

> > I wondering that whether we treat `__int128` as an extended integer type or an integer-class type. Also, I guess we should also cover `_BitInt(N)`, see also #74161.
> > It seems to me that criteria for integer-class types are not very clear. CC @cjdb @ldionne.
> 
> integer-like types bigger than `long long` aren't supported by `iota_view`:
> 
> https://github.com/llvm/llvm-project/blob/44284cde6d74a8c0a849f9f30feb23a37a796820/libcxx/include/__ranges/iota_view.h#L64

Oh... Then we also need to test using integer-class type as the `_BoundSentinel` type while the `_Start` type is an integer type.

(And if we want to properly support extended integer types, the restriction should be relaxed.)

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


More information about the libcxx-commits mailing list