718. basic_string is not a sequence

Section: 24.3.2 [basic.string] Status: NAD Editorial Submitter: Bo Persson Opened: 2007-08-18 Last modified: 2016-02-10

Priority: Not Prioritized

View other active issues in [basic.string].

View all other issues in [basic.string].

View all issues with NAD Editorial status.

Discussion:

Paragraph 24.3.2 [basic.string]/3 states:

The class template basic_string conforms to the requirements for a Sequence (23.1.1) and for a Reversible Container (23.1).

First of all, 26.2.3 [sequence.reqmts] is no longer "Sequence" but "Sequence container". Secondly, after the resent changes to containers (emplace, push_back, const_iterator parameters to insert and erase), basic_string is not even close to conform to the current requirements.

[ Bellevue: ]

General consensus is to suggest option 2.

[ 2009-07 Frankfurt: ]

Move to NAD Editorial

Proposed resolution:

Remove this sentence, in recognition of the fact that basic_string is not just a vector-light for literal types, but something quite different, a string abstraction in its own right.