(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
gomp/
pr29965-3.c
       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" } */
       5  
       6  extern void baz (void) __attribute__ ((noreturn));
       7  
       8  void
       9  foo1 (void)
      10  {
      11  #pragma omp single
      12    for (;;);
      13  }
      14  
      15  void
      16  bar1 (void)
      17  {
      18  #pragma omp single
      19    baz ();
      20  }
      21  
      22  void
      23  foo2 (void)
      24  {
      25  #pragma omp master
      26    for (;;);
      27  }
      28  
      29  void
      30  bar2 (void)
      31  {
      32  #pragma omp master
      33    baz ();
      34  }
      35  
      36  void
      37  foo3 (void)
      38  {
      39  #pragma omp ordered
      40    for (;;);
      41  }
      42  
      43  void
      44  bar3 (void)
      45  {
      46  #pragma omp ordered
      47    baz ();
      48  }
      49  
      50  void
      51  foo4 (void)
      52  {
      53  #pragma omp critical
      54    for (;;);
      55  }
      56  
      57  void
      58  bar4 (void)
      59  {
      60  #pragma omp critical
      61    baz ();
      62  }