gcc/libgomp/testsuite/libgomp.c++/pr35185.C
Jakub Jelinek d0fb20beb1 re PR middle-end/35185 (ICE using openmp with g++-4.2)
PR middle-end/35185
	* omp-low.c (lower_regimplify, init_tmp_var, save_tmp_var): Removed.
	(lower_omp_2): New function.
	(lower_omp_1, lower_omp): Rewritten.

	* testsuite/libgomp.c++/pr35185.C: New test.

From-SVN: r133162
2008-03-13 10:26:25 +01:00

34 lines
339 B
C

// PR middle-end/35185
// { dg-do run }
extern "C" void abort ();
struct S
{
S () : s (6) {}
~S () {}
int s;
};
__attribute__((noinline))
bool
bar (S s)
{
return s.s != 6;
}
int
main ()
{
S s;
int err = 0;
#pragma omp parallel shared (s)
{
if (bar (s))
#pragma omp atomic
err++;
}
if (err)
abort ();
}