This page is a snapshot from the LWG issues list, see theLibrary Active Issues List for more information and the meaning ofTC1 status.
Section: 31.6.3.4.2[streambuf.get.area]Status:TC1Submitter: Matt AusternOpened: 1998-07-28Last modified: 2016-01-28
Priority:Not Prioritized
View all issues withTC1 status.
Discussion:
27.5.2.3.1 says that basic_streambuf::gbump() "Advances thenext pointer for the input sequence by n."
The straightforward interpretation is that it is just gptr() +=n. An alternative interpretation, though, is that it behaves as if itcalls sbumpc n times. (The issue, of course, is whether it might evercall underflow.) There is a similar ambiguity in the case ofpbump.
(The "classic" AT&T implementation used theformer interpretation.)
Proposed resolution:
Change 31.6.3.4.2[streambuf.get.area] paragraph 4 gbump effects from:
Effects: Advances the next pointer for the input sequence by n.
to:
Effects: Adds
nto the next pointer for the input sequence.
Make the same change to 31.6.3.4.3[streambuf.put.area] paragraph 4 pbumpeffects.