PR tree-optimization/81303
[official-gcc.git] / gcc / testsuite / gcc.dg / gomp / pr29965-2.c
blob1bee4859d42523a8ef17d0c58c9ebf724929c549
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 (void) __attribute__ ((noreturn));
8 void
9 foo1 (void)
11 #pragma omp sections
13 for (;;)
18 void
19 bar1 (void)
21 #pragma omp sections
23 #pragma omp section
24 baz ();
25 #pragma omp section
26 baz ();
30 void
31 foo2 (void)
33 #pragma omp sections
36 #pragma omp section
37 for (;;)
42 void
43 bar2 (void)
45 #pragma omp sections
47 #pragma omp section
48 baz ();
49 #pragma omp section
54 void
55 foo3 (void)
57 #pragma omp parallel sections
59 for (;;)
64 void
65 bar3 (void)
67 #pragma omp parallel sections
69 #pragma omp section
70 baz ();
71 #pragma omp section
72 baz ();
76 void
77 foo4 (void)
79 #pragma omp parallel sections
82 #pragma omp section
83 for (;;)
88 void
89 bar4 (void)
91 #pragma omp parallel sections
93 #pragma omp section
94 baz ();
95 #pragma omp section