Merge -r 127928:132243 from trunk
[official-gcc.git] / gcc / testsuite / g++.dg / torture / pr33887-2.C
blobf64cfad96079c9532ebe947dd3c856b9d6a56f34
1 /* { dg-do run } */
3 extern "C" void abort() __attribute__ ((noreturn));
5 struct s
7   unsigned long long f1 : 40;
8   unsigned int f2 : 24;
9 } sv;
11 int main()
13   int f2;
14   sv.f2 = (1 << 24) - 1;
15   __asm__ volatile ("" : : : "memory");
16   ++sv.f2;
17   f2 = sv.f2;
18   if (f2 != 0)
19     abort();
20   return 0;