1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
/* PR middle-end/48973 */ extern void abort (void); struct S { int f : 1; } s; int v = -1; void foo (unsigned int x) { if (x != -1U) abort (); } int main () { s.f = (v & 1) > 0; foo (s.f); return 0; }