http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52745
--- Comment #3 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-03-27 23:21:59 UTC --- Otherwise, if the move constructor by chance throws, the push_back cannot have no effects, as required by 23.2.1/10. Actually the requirement holds for all the containers, but only std::vector implements it in 4.7, the other containers (I *think* only std::deque needs work) will follow.