! Tests that we can map "unnamed" and non-reference/non-box values to device; for ! example, values that result from `fix.box_dims` ops. ! RUN: %flang_fc1 -emit-hlfir -fopenmp -fdo-concurrent-to-openmp=device %s -o - \ ! RUN: | FileCheck %s ! RUN: bbc -emit-hlfir -fopenmp -fdo-concurrent-to-openmp=device %s -o - \ ! RUN: | FileCheck %s subroutine test_non_refernece integer i real, allocatable :: arr(:) associate(a => arr) do concurrent (i = 1:10) block real z(size(a,1)) end block end do end associate end subroutine test_non_refernece ! CHECK: omp.map.info var_ptr(%{{.*}} : !fir.ref, index) ! CHECK: omp.map.info var_ptr(%{{.*}} : !fir.ref, index) ! CHECK: omp.map.info var_ptr(%{{.*}} : !fir.ref, index) ! CHECK: %[[DIM_MAP:.*]] = omp.map.info var_ptr(%{{.*}} : !fir.ref, index) ! CHECK-SAME: map_clauses(implicit) ! CHECK-SAME: capture(ByCopy) -> !fir.ref {name = ""} ! CHECK: omp.target host_eval({{.*}} : index, index, index) ! CHECK-SAME: map_entries({{.*}}, %[[DIM_MAP]] -> %{{.*}} : ! CHECK-SAME: !fir.ref, !fir.ref)