2 /* { dg-options "-O0" } */
10 #pragma omp declare target to (v)
11 typedef void (*fnp1
) (void);
12 typedef fnp1 (*fnp2
) (void);
13 void f1 (void) { v
++; }
14 void f2 (void) { v
+= 4; }
15 void f3 (void) { v
+= 16; f1 (); }
16 fnp1
f4 (void) { v
+= 64; return f2
; }
20 fnp2
f5 (void) { f3 (); return f4
; }
21 #pragma omp declare target enter (c)
27 #pragma omp target map(from:err)