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