Imported Upstream version 4.8.1
[platform/upstream/gcc48.git] / libgomp / testsuite / libgomp.c / pr34513.c
1 /* PR c++/34513 */
2 /* { dg-do run } */
3
4 #include <omp.h>
5
6 extern void abort ();
7
8 static int errors = 0;
9 static int thrs = 4;
10
11 int
12 main ()
13 {
14   omp_set_dynamic (0);
15
16   #pragma omp parallel num_threads (thrs)
17   {
18     static int shrd = 0;
19
20     #pragma omp atomic
21       shrd += 1;
22
23     #pragma omp barrier
24
25     if (shrd != thrs)
26       #pragma omp atomic
27         errors += 1;
28   }
29
30   if (errors)
31     abort ();
32   return 0;
33 }