------- Comment #4 from jwakely dot gcc at gmail dot com  2009-06-10 10:33 
-------
The code is invalid

MyStream::
MyStream ()
  : std::iostream (&m_buf),
    m_buf ()
{
}

m_buf has not been cosntructed when you pass it to the base constructor, so
m_buf.init() is called on an uncosntructed streambuf.

You shoudl either pass a null pointer to the base class, then call m_buf.init()
in the MyStream constructor body, or use the base-from-member idiom to
initialise m_buf before the base class.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40391

Reply via email to