1 struct foo {
2   unsigned : 12;
3   unsigned field : 4;
4 } foo;
5 unsigned oldfoo;
6 
7 int
bar(unsigned k)8 bar (unsigned k)
9 {
10   oldfoo = foo.field;
11   foo.field = k;
12   if (k)
13     return 1;
14   return 2;
15 }
16 
main()17 main ()
18 {
19   if (bar (1U) != 1)
20     abort ();
21   exit (0);
22 }
23