http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49338
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED CC| |jakub at gcc dot gnu.org Resolution| |INVALID --- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-06-09 08:22:18 UTC --- double get() const { U64 rv=m_Value.m_U64 & ~((U64)1); const double* pRv=(double*)(&rv); return *pRv; } is an obvious aliasing violation.