// RUN: | %fcheck-generic -check-prefix=DEBUG -check-prefix=CHECK
#include <stdio.h>
struct S {
int *p;
};
int main(void) {
int A[10];
struct S s1;
s1.p = A;
#pragma omp target enter data map(alloc : s1.p[0 : 10])
#pragma omp target map(alloc : s1.p[0 : 10])
{
for (int i = 0; i < 10; ++i)
s1.p[i] = i;
}
#pragma omp target exit data map(from : s1.p[0 : 10])
int fail_A = 0;
for (int i = 0; i < 10; ++i) {
if (A[i] != i) {
fail_A = 1;
break;
}
}
if (fail_A) {
printf("Test A failed\n");
}
return fail_A;
}