https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108605
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Slightly modified testcase so it comes with both C and C++ front-ends: ``` struct S { char a; char b; char c; int d[0x7fffffffu]; int e; }; void foo (struct S *s) { if (s->b && s->c != 0) __builtin_abort (); } void bar () { struct S s[2]; s[0].a = 0; s[0].e = 0; foo (s); } ```