1193323Sed/* PR middle-end/29965 */
2193323Sed/* Test that OpenMP construct bodies which never return don't cause ICEs.  */
3193323Sed/* { dg-do compile } */
4193323Sed/* { dg-options "-O2 -fopenmp" } */
5193323Sed
6193323Sedextern void baz (void) __attribute__ ((noreturn));
7193323Sed
8193323Sedstatic inline void
9193323Sedfoo (void)
10193323Sed{
11193323Sed#pragma omp parallel
12193323Sed  for (;;)
13193323Sed    ;
14193323Sed}
15193323Sed
16193323Sedstatic inline void
17193323Sedbar (void)
18193323Sed{
19193323Sed#pragma omp parallel
20193323Sed  baz ();
21193323Sed}
22193323Sed
23193323Sedvoid
24193323Sedfoo1 (void)
25193323Sed{
26193323Sed  foo ();
27193323Sed}
28193323Sed
29193323Sedvoid
30193323Sedfoo2 (void)
31193323Sed{
32193323Sed  foo ();
33193323Sed}
34193323Sed
35193323Sedvoid
36193323Sedbar1 (void)
37193323Sed{
38193323Sed  bar ();
39193323Sed}
40193323Sed
41193323Sedvoid
42193323Sedbar2 (void)
43193323Sed{
44193323Sed  bar ();
45193323Sed}
46193323Sed