1 /* { dg-do run } */
2 
3 void
foo(int * p)4 foo (int *p)
5 {
6   int i;
7   #pragma omp parallel
8   #pragma omp single
9   #pragma omp target teams distribute parallel for map(p[0:24])
10   for (i = 0; i < 24; i++)
11     p[i] = p[i] + 1;
12 }
13 
14 int
main()15 main ()
16 {
17   int p[24], i;
18   for (i = 0; i < 24; i++)
19     p[i] = i;
20   foo (p);
21   for (i = 0; i < 24; i++)
22     if (p[i] != i + 1)
23       __builtin_abort ();
24   return 0;
25 }
26