[ 2022-10-12; Reflector poll ]
Set priority to 3 after reflector poll.
"Could introduce an as_lvalue
lambda (like
auto as_lvalue = []<class T>(T&& x) -> T& { return (T&)x; };
) and use it throughout."
This wording is relative to N4917.
Modify [range.join.iterator] as indicated:
constexpr iterator& operator--() requires ref-is-glvalue && bidirectional_range<Base> && bidirectional_range<range_reference_t<Base>> && common_range<range_reference_t<Base>>;
-13- Effects: Equivalent to:
if (outer_ == ranges::end(parent_->base_)) { auto&& inner = *--outer_; inner_ = ranges::end(inner*--outer_); } while (trueinner_ == ranges::begin(*outer_)) { if (auto&& tmp = *outer_; inner_ == ranges::begin(tmp)) { auto&& inner = *--outer_; inner_ = ranges::end(inner*--outer_); } else { break; } } --inner_; return *this;