blob: 350e7a3672b4db8e6269445890948ae872a70736 [file] [log] [blame]
/* { dg-require-effective-target int32plus } */
union U
{
const int a;
unsigned b : 24;
};
static union U u = { 0x12345678 };
/* Constant folding used to fail to account for endianness when folding a
union. */
int
main (void)
{
#ifdef __BYTE_ORDER__
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
return u.b - 0x345678;
#else
return u.b - 0x123456;
#endif
#endif
return 0;
}