http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56837
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> 2013-04-04 08:32:35 UTC --- Testcase extern "C" void abort (void); extern "C" int memcmp (const void *, const void *, __SIZE_TYPE__); bool b1[8]; bool b2[8] = { true, true, true, true, true, true, true, true }; int main() { unsigned int i; for(i=0 ; i < 8; i++) b1[i] = true; if (memcmp (b1, b2, 8) != 0) abort (); return 0; } I have a patch.