diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/gomp/pr35099.C')
-rw-r--r-- | gcc/testsuite/g++.dg/gomp/pr35099.C | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/gomp/pr35099.C b/gcc/testsuite/g++.dg/gomp/pr35099.C new file mode 100644 index 000000000..6c793a3f8 --- /dev/null +++ b/gcc/testsuite/g++.dg/gomp/pr35099.C @@ -0,0 +1,39 @@ +// PR middle-end/35099 +// { dg-do compile } +// { dg-options "-O2 -fopenmp" } + +struct A +{ + ~A () throw (); + void foo (); +}; + +struct B +{ + B () { A ().foo (); } +}; + +void +bar () +{ +#pragma omp parallel + { + #pragma omp single + B (); + #pragma omp for + for (int i = 0; i < 2; ++i) + B (); + } +} + +void +baz () +{ +#pragma omp parallel + { + #pragma omp single + B (); + #pragma omp single + B (); + } +} |