http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51669

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jason at gcc dot gnu.org

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-01-02 
15:29:20 UTC ---
Caused by http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=181332 aka PR51060.
Slightly more reduced testcase:

template <typename T> const T & min (const T &, const T &);

void
foo ()
{
#pragma omp parallel num_threads (min (4, 5))
  ;
}

which ICEs starting with r181332 with just -fopenmp.

struct A { A (); ~A (); };
int foo (const A &);

void
foo ()
{
#pragma omp parallel num_threads (foo (A ()))
  ;
}

apparently ICEd already in 4.2 though.  Guess the C++ FE needs to insert some
CLEANUP_POINT_EXPRs around the omp stmts.

Reply via email to