1  /* { dg-additional-options "-O3" } */
       2  
       3  int a;
       4  long c;
       5  signed char d(char e, char f) { return e + f; }
       6  int main(void) {
       7    for (; a <= 1; a++) {
       8      c = -8;
       9      for (; c != 3; c = d(c, 1))
      10        ;
      11    }
      12    char b = c;
      13    if (b != 3)
      14      __builtin_abort();
      15  }