blob: ab7a7787397a63120293ec68b64c9d270214ef7b [file] [log] [blame]
int r, r2, r3;
void
foo (void)
{
int i = 0, j = 0, k = 0;
#pragma omp scope private (i) reduction (+:r) nowait
{
i = 1;
r++;
}
#pragma omp scope private (i) reduction (task, +:r)
#pragma omp scope private (j) reduction (task, +:r2)
#pragma omp scope private (k) reduction (task, +:r3)
{
i = 1;
j = 2;
k = 3;
r++;
r2++;
r3++;
}
#pragma omp parallel
{
#pragma omp scope reduction (+:r) private (i) nowait
{
#pragma omp scope reduction (+:r2) private (j) nowait
{
#pragma omp single
{
i = 1;
j = 2;
r++;
r2++;
}
}
}
}
}