Files
clang-p2996/clang/test/OpenMP/report_default_DSA.cpp
Alexey Bataev 2c84541a21 [OPENMP] Check DSA for variables captured by value.
Currently clang checks for default data sharing attributes only for
variables captured in OpenMP regions by reference. Patch adds checks for
variables captured by value.

llvm-svn: 303077
2017-05-15 16:26:15 +00:00

19 lines
766 B
C++

// RUN: %clang_cc1 -verify -fopenmp -fopenmp-version=45 %s
void foo(int x, int n) {
double vec[n];
for (int iter = 0; iter < x; iter++) {
#pragma omp target teams distribute parallel for map( \
from \
: vec [0:n]) default(none)
// expected-error@+1 {{variable 'n' must have explicitly specified data sharing attributes}}
for (int ii = 0; ii < n; ii++) {
// expected-error@+3 {{variable 'iter' must have explicitly specified data sharing attributes}}
// expected-error@+2 {{variable 'vec' must have explicitly specified data sharing attributes}}
// expected-error@+1 {{variable 'x' must have explicitly specified data sharing attributes}}
vec[ii] = iter + ii + x;
}
}
}