e103542bc8
libgomp/ PR libgomp/92840 * oacc-mem.c (acc_map_data): Clarify reference counting behavior. (acc_unmap_data): Add error case for 'REFCOUNT_INFINITY'. * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-1.c: New file. * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-2.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-3.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust. * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Adjust. From-SVN: r279145
28 lines
595 B
C
28 lines
595 B
C
/* Verify that we refuse 'acc_unmap_data', after 'acc_create'. */
|
|
|
|
/* { dg-skip-if "" { *-*-* } { "*" } { "-DACC_MEM_SHARED=0" } } */
|
|
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <openacc.h>
|
|
|
|
int
|
|
main ()
|
|
{
|
|
const int N = 101;
|
|
|
|
char *h = (char *) malloc (N);
|
|
void *d = acc_create (h, N - 3);
|
|
if (!d)
|
|
abort ();
|
|
|
|
fprintf (stderr, "CheCKpOInT\n");
|
|
acc_unmap_data (h);
|
|
|
|
return 0;
|
|
}
|
|
|
|
/* { dg-output "CheCKpOInT(\n|\r\n|\r).*" } */
|
|
/* { dg-output "refusing to unmap block \\\[\[0-9a-fA-FxX\]+,\\\+98\\\] that has not been mapped by 'acc_map_data'" } */
|
|
/* { dg-shouldfail "" } */
|