This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libstdc++/13007] New: basic_streambuf::pubimbue, imbue wrong


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]