http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53663
--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-09-24 09:14:31 UTC --- Guess for BOOLEAN_TYPE in unions we can't look just at the single bit, but also all other bits of the boolean type, because we rely that the bool doesn't contain other values than false/true.