pr26943-1.c 413 B

123456789101112131415161718192021222324
  1. /* PR c++/26943 */
  2. /* { dg-do run } */
  3. extern void abort (void);
  4. extern void omp_set_dynamic (int);
  5. int n = 6;
  6. int
  7. main (void)
  8. {
  9. int i, x = 0;
  10. omp_set_dynamic (0);
  11. #pragma omp parallel for num_threads (16) firstprivate (n) lastprivate (n) \
  12. schedule (static, 1) reduction (+: x)
  13. for (i = 0; i < 16; i++)
  14. {
  15. if (n != 6)
  16. ++x;
  17. n = i;
  18. }
  19. if (x || n != 15)
  20. abort ();
  21. return 0;
  22. }