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