http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58415
Paolo Carlini <paolo.carlini at oracle dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |ASSIGNED Last reconfirmed| |2013-09-13 Assignee|unassigned at gcc dot gnu.org |paolo.carlini at oracle dot com Ever confirmed|0 |1 --- Comment #1 from Paolo Carlini <paolo.carlini at oracle dot com> --- Urgh, thanks for your report. The move constructor is wrongly setting the length "by hand" instead of using _M_set_length, per the below. I'm going to commit the fix momentarily to mainline and 4_8-branch. Thanks again. Index: include/ext/sso_string_base.h =================================================================== --- include/ext/sso_string_base.h (revision 202561) +++ include/ext/sso_string_base.h (working copy) @@ -362,8 +362,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } _M_length(__rcs._M_length()); - __rcs._M_length(0); __rcs._M_data(__rcs._M_local_data); + __rcs._M_set_length(0); } #endif