#include #define N 10 int main (void) { int X, Y; #pragma omp target map(from: X, Y) { int x = 0, y = 0; for (int i = 0; i < N; i++) [&] (int v) { x += v; } (i); auto yinc = [&y] { y++; }; for (int i = 0; i < N; i++) yinc (); X = x; Y = y; } int Xs = 0; for (int i = 0; i < N; i++) Xs += i; if (X != Xs) abort (); if (Y != N) abort (); }