123456789101112131415161718192021222324252627282930313233 |
- /* PR c++/34513 */
- /* { dg-do run } */
- #include <omp.h>
- extern void abort ();
- static int errors = 0;
- static int thrs = 4;
- int
- main ()
- {
- omp_set_dynamic (0);
- #pragma omp parallel num_threads (thrs)
- {
- static int shrd = 0;
- #pragma omp atomic
- shrd += 1;
- #pragma omp barrier
- if (shrd != thrs)
- #pragma omp atomic
- errors += 1;
- }
- if (errors)
- abort ();
- return 0;
- }
|