[libc++] Fix the handling of `views::take` for `iota_view` (#75683)
Currently, when libc++'s views::take specially handles an iota_view, the addition is done after dereferencing the beginning iterator. However, in [range.take.overview]/2.3, the addition is done before the dereferencing, which means that the standard requires the returned iota_view to have the same W and Bound type in such cases. This patch fixes that, and also fixes a test that was testing the incorrect behavior. Fixes #75611
parent
a7e10e66
Please register or sign in to comment