https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69608

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Wed May  2 16:25:44 2018
New Revision: 259842

URL: https://gcc.gnu.org/viewcvs?rev=259842&root=gcc&view=rev
Log:
PR libstdc++/69608 Move semantics for strstreambuf

In libstdc++ the deprecated char* streams are non-copyable, as was
required pre-C++11.

Since C++11 the standard implies that those streams should be copyable,
but doesn't specify the effects of copying them. This is surely a
defect, so for consistency with other implementations this change makes
them movable, but not copyable.

        PR libstdc++/69608
        * include/backward/strstream (strstreambuf): Define move constructor
        and move assignment operator.
        (istrstream, ostrstream, strstream): Likewise.
        * testsuite/backward/strstream_move.cc: New.

Added:
    trunk/libstdc++-v3/testsuite/backward/strstream_move.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/backward/strstream

Reply via email to