1  void
       2  foo (void)
       3  {
       4    #pragma omp for collapse(2)	/* { dg-error "invalid OpenMP non-rectangular loop step" } */
       5    for (int i = 0; i < 6; i++)
       6      for (int j = 4 * i; j < 7 * i; j += 2)
       7        ;
       8    #pragma omp for collapse(2)	/* { dg-error "invalid OpenMP non-rectangular loop step" } */
       9    for (int i = 0; i < 32; i += 7)
      10      for (int j = 3 * i; j < 7 * i; j += 30)
      11        ;
      12    #pragma omp for collapse(2)
      13    for (int i = 0; i < 6; i++)
      14      for (int j = 4 * i; j < 6 * i; j += 2)
      15        ;
      16    #pragma omp for collapse(2)
      17    for (int i = 0; i < 6; i += 2)
      18      for (int j = 4 * i; j < 7 * i; j += 2)
      19        ;
      20    #pragma omp for collapse(2)
      21    for (int i = 0; i < 6; i += 5)
      22      for (int j = 4 * i; j < 7 * i; j += 15)
      23        ;
      24  }