1extern void abort() __attribute__ ((noreturn));
2
3struct s
4{
5  unsigned long long f1 : 40;
6#if(__SIZEOF_INT__ >= 4)
7  unsigned int f2 : 24;
8#else
9  unsigned long int f2 : 24;
10#endif
11} sv;
12
13int main()
14{
15  int f2;
16  sv.f2 = (1 << 24) - 1;
17  __asm__ volatile ("" : : : "memory");
18  ++sv.f2;
19  f2 = sv.f2;
20  if (f2 != 0)
21    abort();
22  return 0;
23}
24