This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/13007] New: basic_streambuf::pubimbue, imbue wrong
- From: "peturr02 at ru dot is" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 11 Nov 2003 10:34:28 -0000
- Subject: [Bug libstdc++/13007] New: basic_streambuf::pubimbue, imbue wrong
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Currently, basic_streambuf::pubimbue does not modify _M_buf_locale, but
basic_streambuf::imbue does so. This appears wrong.
* The effects clause of imbue says "Does nothing"
* The postcondition clause of pubimbue(loc) is "loc == getloc()". There is
no mention that derived classes need to call basic_streambuf::imbue()
from overridden versions for this to hold.
* The returns clause of getloc() says that if getloc() is called from
an overridden version of imbue, then getloc() will return the previously
imbued locale. There is no mention that this does not hold if
basic_streambuf::imbue is called from the derived class version.
--
Summary: basic_streambuf::pubimbue, imbue wrong
Product: gcc
Version: 3.4
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: libstdc++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: peturr02 at ru dot is
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13007