1  /* { dg-do run } */
       2  /* { dg-options "-O2" } */
       3  
       4  int a, b, c, d;
       5  void k() {
       6    unsigned f = 1;
       7    long long g = 4073709551615;
       8    for (; a; a++)
       9      for (;;) {
      10        d = 0;
      11      L1:
      12        break;
      13      }
      14    if (f)
      15      for (; a; a++)
      16        ;
      17    g || f;
      18    int i = 0 - f || g;
      19    long long j = g - f;
      20    if (j || f) {
      21      if (g < 4073709551615)
      22        for (;;)
      23          ;
      24      int e = ~f, h = b / ~e;
      25      if (c)
      26        goto L2;
      27      g = f = h;
      28    }
      29    g || d;
      30  L2:
      31    if (c)
      32      goto L1;
      33  }
      34  int main() { k(); return 0; }