12345678910111213141516171819202122232425262728 |
- // { dg-do run }
- extern void abort(void);
- #define N 1000
- int foo()
- {
- int i = 0, j;
- #pragma omp parallel for num_threads(2) shared (i)
- for (j = 0; j < N; ++j)
- {
- #pragma omp parallel num_threads(1) shared (i)
- {
- #pragma omp atomic
- i++;
- }
- }
- return i;
- }
- int main()
- {
- if (foo() != N)
- abort ();
- return 0;
- }
|