Title
take_while_view::sentinel's conversion constructor should move
Status
ready
Section
[range.take.while.sentinel]
Submitter
Hewill Kang

Created on 2022-06-03.00:00:00 last changed 5 days ago

Messages

Date: 2022-06-21.11:47:28

Proposed resolution:

This wording is relative to N4910.

  1. Modify [range.take.while.sentinel] as indicated:

    constexpr sentinel(sentinel<!Const> s)
      requires Const && convertible_to<sentinel_t<V>, sentinel_t<Base>>;
    

    -2- Effects: Initializes end_ with std::move(s.end_) and pred_ with s.pred_.

Date: 2022-06-15.00:00:00

[ 2022-06-21; Reflector poll ]

Set status to Tentatively Ready after seven votes in favour during reflector poll.

Date: 2022-06-03.00:00:00

The conversion constructor of take_while_view::sentinel requires sentinel_t<V> must satisfy convertible_to<sentinel_t<Base>>, which indicates that the rvalue reference of sentinel_t<V> can be converted to sentinel_t<Base>, but in the Effects element, we assign the lvalue s.end_ to end_.

History
Date User Action Args
2022-06-21 11:47:28adminsetmessages: + msg12519
2022-06-21 11:47:28adminsetstatus: new -> ready
2022-06-05 07:51:23adminsetmessages: + msg12487
2022-06-03 00:00:00admincreate