Open ericniebler opened 5 years ago
If that's a legit restriction (is it?)
That's [range.sized]/2.2. debug_input_view
strikes again!
Also affected:
take_view::begin() const
Updating range-v3 to be std(-ish) conforming has been really good at exposing these bugs!
Range-v3's
debug_input_view::size()
asserts ifbegin()
has been called beforesize()
. If that's a legit restriction (is it?) then there is a problem intake_view<V>::begin()
:If
V
is an Input, Sized range, then we are callingbegin
andsize
in some indeterminate order. That is enough to trigger the assertion in range-v3'sdebug_input_view
.Proposed Resolution
Change [range.take.view] as follows:
Change [range.subrange.ctor]/p6.1 as follows: