1 struct foo
2 {
3   unsigned long long b:40;
4 } x;
5 
6 extern void abort (void);
7 
test1(unsigned long long res)8 void test1(unsigned long long res)
9 {
10   /* The shift is carried out in 40 bit precision.  */
11   if (x.b<<32 != res)
12     abort ();
13 }
14 
main()15 int main()
16 {
17   x.b = 0x0100;
18   test1(0);
19   return 0;
20 }
21