// PR c++/88988 | |
// { dg-do compile } | |
// { dg-additional-options "-std=c++14" } | |
extern "C" void abort (); | |
template <typename T> | |
struct A { | |
A () : a(), b() | |
{ | |
[&] () | |
{ | |
#pragma omp task firstprivate (a) shared (b) | |
b = ++a; | |
#pragma omp taskwait | |
} (); | |
} | |
T a, b; | |
}; | |
int | |
main () | |
{ | |
A<int> x; | |
if (x.a != 0 || x.b != 1) | |
abort (); | |
} |