aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/c-c++-common/goacc/pr93488.c
blob: 6fddad919d2208f5292095991399139c6a4ffd3c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/* PR middle-end/93488
 
   Ensure that wait and async arguments can be cast to the correct type
   without breaking gimple verification.  */

void test()
{
  /* int */ unsigned char a = 1;
  /* int */ unsigned char w = 1;

#pragma acc parallel wait(w) async(a)
  ;
#pragma acc kernels wait(w) async(a)
  ;
#pragma acc serial wait(w) async(a)
  ;
  int data = 0;
#pragma acc enter data wait(w) async(a) create(data)
#pragma acc update wait(w) async(a) device(data)
#pragma acc exit data wait(w) async(a) delete(data)
#pragma acc wait(w) async(a)
}