1 // { dg-additional-sources "pr71959-aux.cc" }
3 // PR lto/71959 ICEd LTO due to mismatch between writing & reading behaviour
9 Iter(int *cursor_) : cursor(cursor_) {}
11 int *point() const { return cursor; }
14 #pragma acc routine seq
15 int one () { return 1; }
19 static void apply (int (*fn)(), Iter out)
20 { *out.point() = fn (); }
27 #pragma acc parallel copyout(x)
28 Apply::apply (one, Iter (&x));