| ... | ... | @@ -410,8 +410,13 @@ struct __segmented_iterator_traits<_JoinViewIterator> { |
| 410 | 410 | |
| 411 | 411 | static constexpr _LIBCPP_HIDE_FROM_ABI _JoinViewIterator |
| 412 | 412 | __compose(__segment_iterator __seg_iter, __local_iterator __local_iter) { |
| 413 | | return _JoinViewIterator( |
| 414 | | std::move(__seg_iter).__get_data(), std::move(__seg_iter).__get_iter(), std::move(__local_iter)); |
| 413 | auto&& __parent = std::move(__seg_iter).__get_data(); |
| 414 | auto&& __outer = std::move(__seg_iter).__get_iter(); |
| 415 | if (__local_iter == ranges::end(*__outer)) { |
| 416 | ++__outer; |
| 417 | return _JoinViewIterator(*__parent, __outer); |
| 418 | } |
| 419 | return _JoinViewIterator(__parent, __outer, std::move(__local_iter)); |
| 415 | 420 | } |
| 416 | 421 | }; |
| 417 | 422 | |