Title
Iterator requirements should reference iterator traits
Status
c++17
Section
[iterator.requirements][iterator.traits]
Submitter
Ville Voutilainen

Created on 2016-01-05.00:00:00 last changed 89 months ago

Messages

Date: 2016-08-06.20:44:18
After [iterator.requirements.general]/5, insert the following new paragraph:

Proposed resolution:

-?- In addition to the requirements in this sub-clause, the nested typedef-names specified in ([iterator.traits]) shall be provided for the iterator type. [Note: Either the iterator type must provide the typedef-names directly (in which case iterator_traits pick them up automatically), or an iterator_traits specialization must provide them. -end note]

Date: 2016-08-03.00:00:00

[ 2016-08-03 Chicago ]

Fri AM: Moved to Tentatively Ready

Date: 2016-01-05.00:00:00

See this reflector discussion for background.

[iterator.requirements] attempts to establish requirements for iterators, but [iterator.traits]/1 establishes further requirements that must be met in order to author a portable iterator that works with existing implementations. Failing to meet the requirements of the latter will fail to work in practice. The former requirements should reference the latter, normatively.

History
Date User Action Args
2017-07-30 20:15:43adminsetstatus: wp -> c++17
2016-11-14 03:59:28adminsetstatus: pending -> wp
2016-11-14 03:55:22adminsetstatus: ready -> pending
2016-08-06 20:44:18adminsetmessages: + msg8439
2016-08-06 20:44:18adminsetstatus: new -> ready
2016-04-16 04:56:37adminsetmessages: + msg8060
2016-01-05 00:00:00admincreate