1// PR middle-end/35099
2// { dg-do compile }
3// { dg-options "-O2 -fopenmp" }
4
5struct A
6{
7  ~A () throw ();
8  void foo ();
9};
10
11struct B
12{
13  B () { A ().foo (); }
14};
15
16void
17bar ()
18{
19#pragma omp parallel
20  {
21  #pragma omp single
22    B ();
23  #pragma omp for
24    for (int i = 0; i < 2; ++i)
25      B ();
26  }
27}
28
29void
30baz ()
31{
32#pragma omp parallel
33  {
34  #pragma omp single
35    B ();
36  #pragma omp single
37    B ();
38  }
39}
40