1// PR middle-end/29965
2// Test that OpenMP construct bodies which never return don't cause ICEs.
3// This is invalid code, but we don't emit diagnostics for it, nevertheless
4// we test that we don't ICE on it.
5// { dg-do compile }
6// { dg-options "-O2 -fopenmp" }
7
8void
9foo1 ()
10{
11#pragma omp single
12  throw 0;
13}
14
15void
16foo2 ()
17{
18#pragma omp master
19  throw 0;
20}
21
22void
23foo3 ()
24{
25#pragma omp ordered
26  throw 0;
27}
28
29void
30foo4 ()
31{
32#pragma omp critical
33  throw 0;
34}
35