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