| /* Tiny tuple test. */ | |
| #include <tuple> | |
| #include "target-flex-common.h" | |
| bool test(int arg) | |
| { | |
| bool ok; | |
| int out; | |
| std::tuple tup = {'a', arg, 3.14f}; | |
| #pragma omp target map(from: ok, out) map(to: tup) | |
| { | |
| bool inner_ok = true; | |
| { | |
| VERIFY (std::get<0>(tup) == 'a'); | |
| out = std::get<1>(tup); | |
| } | |
| end: | |
| ok = inner_ok; | |
| } | |
| if (!ok) | |
| return false; | |
| VERIFY_NON_TARGET (out == arg); | |
| return true; | |
| } | |
| int main() | |
| { | |
| volatile int arg = 42u; | |
| return test(arg) ? 0 : 1; | |
| } |