Update concepts branch to revision 131834
[official-gcc.git] / gcc / testsuite / g++.dg / gomp / pr29965-3.C
blobb98c24e5505cfa011cd7d73cd4836de9ad8c1b9f
1 // PR middle-end/29965
2 // Test that OpenMP construct bodies which never return don't cause ICEs.
3 // { dg-do compile }
4 // { dg-options "-O2 -fopenmp" }
6 extern void baz () __attribute__ ((noreturn));
8 void
9 foo1 ()
11 #pragma omp single
12   for (;;);
15 void
16 bar1 ()
18 #pragma omp single
19   baz ();
22 void
23 foo2 ()
25 #pragma omp master
26   for (;;);
29 void
30 bar2 ()
32 #pragma omp master
33   baz ();
36 void
37 foo3 ()
39 #pragma omp ordered
40   for (;;);
43 void
44 bar3 ()
46 #pragma omp ordered
47   baz ();
50 void
51 foo4 ()
53 #pragma omp critical
54   for (;;);
57 void
58 bar4 ()
60 #pragma omp critical
61   baz ();