This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/52745] GCC4.7 vector uses copy instead of move constructor
- From: "paolo.carlini at oracle dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 27 Mar 2012 23:44:44 +0000
- Subject: [Bug libstdc++/52745] GCC4.7 vector uses copy instead of move constructor
- Auto-submitted: auto-generated
- References: <bug-52745-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52745
--- Comment #6 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-03-27 23:44:44 UTC ---
Essentially the leeway for the unsafe fallback in the case of Comment #4 is
provided by 23.3.6.5/1: "If an exception is thrown by the move constructor of a
non-CopyInsertable T, the effects are unspecified".
But really, historically, people simply decided to replace for reallocations
unconditional moves with move_if_noexcexpt.