1void
2f (void)
3{
4  unsigned char c, ca[15], caa[20][30];
5
6#pragma acc data copyin(c)
7  {
8    c = 5;
9    ca[3] = c;
10    caa[3][12] = ca[3] + caa[3][12];
11
12#pragma acc data copyin(ca[2:4])
13    {
14      c = 6;
15      ca[4] = c;
16      caa[3][12] = ca[3] + caa[3][12];
17    }
18
19#pragma acc parallel copyout(ca[3:4])
20    {
21      c = 7;
22      ca[5] = c;
23      caa[3][12] = ca[3] + caa[3][12];
24    }
25
26#pragma acc kernels copy(ca[4:4])
27    {
28      c = 8;
29      ca[6] = c;
30      caa[3][12] = ca[3] + caa[3][12];
31    }
32
33#pragma acc data pcopy(ca[5:7])
34    {
35      c = 15;
36      ca[7] = c;
37      caa[3][12] = ca[3] + caa[3][12];
38
39#pragma acc data pcopyin(caa[3:7][0:30])
40      {
41	c = 16;
42	ca[8] = c;
43	caa[3][12] = ca[3] + caa[3][12];
44      }
45
46#pragma acc parallel pcopyout(caa[3:7][0:30])
47      {
48	c = 17;
49	ca[9] = c;
50	caa[3][12] = ca[3] + caa[3][12];
51      }
52
53#pragma acc kernels pcopy(caa[3:7][0:30])
54      {
55	c = 18;
56	ca[10] = c;
57	caa[3][12] = ca[3] + caa[3][12];
58      }
59    }
60  }
61}
62