gcc/libgomp/testsuite/libgomp.oacc-c-c++-common/host_data-3.c

30 lines
533 B
C

/* { dg-do compile } */
#include <openacc.h>
#include <stdlib.h>
#define N 1024
int main (int argc, char* argv[])
{
int x[N];
#pragma acc data copyin (x[0:N])
{
int *xp;
#pragma acc host_data use_device (x)
{
/* This use of the present clause is undefined behaviour for OpenACC. */
#pragma acc parallel present (x) copyout (xp) /* { dg-error "variable 'x' declared in enclosing 'host_data' region" } */
{
xp = x;
}
}
if (xp != acc_deviceptr (x))
abort ();
}
return 0;
}