Section: 18.104.22.168.2 [streambuf.virt.buffer] Status: TC1 Submitter: Dietmar Kühl Opened: 1999-07-20 Last modified: 2016-01-28 10:19:27 UTC
Priority: Not Prioritized
View all other issues in [streambuf.virt.buffer].
View all issues with TC1 status.
The default behavior of setbuf() is described only for the situation that gptr() != 0 && gptr() != egptr(): namely to do nothing. What has to be done in other situations is not described although there is actually only one reasonable approach, namely to do nothing, too.
Since changing the buffer would almost certainly mess up most buffer management of derived classes unless these classes do it themselves, the default behavior of setbuf() should always be to do nothing.
Change 22.214.171.124.2 [streambuf.virt.buffer], paragraph 3, Default behavior, to: "Default behavior: Does nothing. Returns this."