http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55098
--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-10-27 16:03:17 UTC --- (In reply to comment #2) > See http://en.wikipedia.org/wiki/Return_value_optimization > Use -fno-elide-constructors to disable constructor elision And also http://en.wikipedia.org/wiki/Copy_elision which says "It is generally not recommended to disable this important optimization."