1 union u 2 { 3 struct {unsigned h, l;} i; 4 double d; 5 }; 6 foo(union u x)7foo (union u x) 8 { 9 while (x.i.h++) 10 { 11 while (x.i.l-- > 0) 12 ; 13 while (x.d++ > 0) 14 ; 15 } 16 } 17 18 union n 19 { 20 long long unsigned i; 21 double d; 22 }; 23 bar(union n x)24bar (union n x) 25 { 26 int i; 27 for (i = 0; i < 100; i++) 28 { 29 while (--x.i > 0) 30 ; 31 while (++x.d > 0) 32 ; 33 } 34 return x.i; 35 } 36 37