https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91126

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Testcase that fails for a longer time already:

struct S
{
  int a : 24;
  int b : 8;
} s;

int
main()
{
 s.a = 0xfefefe;
 s.b = 0xfe;
 unsigned char c;
 c = ((unsigned char *)&s)[0];
 if (c != 0xfe)
   __builtin_abort ();
 c = ((unsigned char *)&s)[1];
 if (c != 0xfe)
   __builtin_abort ();
 c = ((unsigned char *)&s)[2];
 if (c != 0xfe)
   __builtin_abort ();
 c = ((unsigned char *)&s)[3];
 if (c != 0xfe)
   __builtin_abort ();
 return 0;
}

Reply via email to