1static int
2test(int x)
3{
4  union
5    {
6      int i;
7      double d;
8  } a;
9  a.d = 0;
10  a.i = 1;
11  return x >> a.i;
12}
13
14int main(void)
15{
16  if (test (5) != 2)
17    abort ();
18  exit (0);
19}
20