Title
enumerate_view::iterator constructor is explicit
Status
nad
Section
[range.enumerate.iterator]
Submitter
Jonathan Wakely

Created on 2023-03-23.00:00:00 last changed 18 months ago

Messages

Date: 2023-06-01.14:39:24

Proposed resolution:

This wording is relative to N4944.

  1. Modify the class synopsis in [range.enumerate.iterator] as shown:

    
        constexpr explicit
          iterator(iterator_t<Base> current, difference_type pos);  // exposition only
    
  2. Modify the detailed description in [range.enumerate.iterator] as shown:

      constexpr explicit iterator(iterator_t<Base> current, difference_type pos);
    

    -2- Effects: Initializes current_ with std::move(current) and pos_ with pos.

Date: 2023-06-15.00:00:00

[ 2023-06-01; Reflector poll ]

Set status to Tentatively NAD after four votes in favour during reflector poll. The constructor is exposition-only, it doesn't make any difference to anything whether it's explicit or not.

Date: 2023-03-23.00:00:00

enumerate_view::iterator has this constructor:

    constexpr explicit
      iterator(iterator_t<Base> current, difference_type pos);  // exposition only

In P2164R9 the detailed description of the function showed a default argument for the second parameter, which would justify it being explicit. However, that default argument was not present in the class synopsis and was removed from the detailed description when applying the paper to the draft.

History
Date User Action Args
2023-06-01 14:39:24adminsetmessages: + msg13610
2023-06-01 14:39:24adminsetstatus: new -> nad
2023-03-23 17:50:11adminsetmessages: + msg13492
2023-03-23 00:00:00admincreate