1  /* { dg-do compile } */
       2  /* { dg-options "-O -w" } */
       3  int a = 1, g, h = 1, d, e, *f;
       4  char b;
       5  static int c[] = { 0, 0 };
       6  void fn2 (void);
       7  
       8  void
       9  fn1 (short x, int l)
      10  {
      11  lab:
      12    {
      13      int k, m[0];
      14      long j = h ? 0 : 0 / 0;
      15      unsigned char n = j;
      16      unsigned char i = x >= 0 ? n : n >> x;
      17      g = i;
      18      for (;;)
      19        {
      20          if (a)
      21            goto lab;
      22          while (d)
      23            {
      24              e = b = c[l];
      25              fn2 ();
      26            }
      27          int o = m[0];
      28          f = &k;
      29        }
      30    }
      31  }