Handle noexcept on transactions with -fno-exceptions
[official-gcc.git] / libgomp / testsuite / libgomp.c / pr36802-3.c
blobf11baa09f57c791950e564baad387520e13d6f64
1 /* PR middle-end/36802 */
3 extern void abort (void);
5 int q;
7 int
8 foo (int k)
10 int i = 6, n = 0;
11 omp_set_dynamic (0);
12 omp_set_nested (1);
13 #pragma omp parallel shared (i) num_threads (3)
15 int l;
17 if (omp_get_num_threads () != 3)
18 #pragma omp atomic
19 n += 1;
20 else
21 #pragma omp for
22 for (l = 0; l < 3; l++)
23 if (!k)
24 #pragma omp parallel shared (i) num_threads (4)
26 if (omp_get_num_threads () != 4)
27 #pragma omp atomic
28 n += 1;
29 #pragma omp critical
30 i += 1;
32 else
33 #pragma omp atomic
34 q += i;
36 if (n == 0 && i != 6 + 3 * 4)
37 abort ();
38 return 0;
41 int
42 main (void)
44 foo (0);
45 return 0;