http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50501
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-09-24 00:35:13 UTC --- What failure scenario are you talking about? Surely if there's a memory allocation failure it will throw a bad_alloc exception, so __s.str() will never get called?