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