http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54606
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> 2012-09-22 19:46:36 UTC --- (In reply to comment #1) > References cannot be assigned in C++, your code just triggers undefined > behavior. More to the point it is not undefined behavior but rather: a = Y; invokes the Dummy::operator= .