1  /* { dg-do compile } */
       2  /* { dg-options "-Ofast" { target *-*-* } } */
       3  
       4  int a, b;
       5  unsigned long d;
       6  void fn1() {
       7    unsigned long *h = &d;
       8  line1 : {
       9    int i = 4;
      10    for (; b; i++) {
      11      d = ((d + 6 ?: *h) ? a : 7) && (i &= 0 >= b);
      12      b += a;
      13    }
      14  }
      15    h = 0;
      16    for (; *h;)
      17      goto line1;
      18  }