xref: /llvm-project/offload/test/offloading/fortran/target-map-two-dtype-explicit-member.f90 (revision 372344995568cae076477a8b0e98fcdec7c49379)
1! Offloading test checking interaction of two derived type's with one explicit
2! member each being mapped with bounds to target
3! REQUIRES: flang, amdgpu
4
5! RUN: %libomptarget-compile-fortran-run-and-check-generic
6program main
7    type :: scalar_array
8        real(4) :: break_0
9        real(4) :: array_x(10)
10        real(4) :: break_1
11        real(4) :: array_y(10)
12        real(4) :: break_3
13    end type scalar_array
14
15    type(scalar_array) :: scalar_arr1
16    type(scalar_array) :: scalar_arr2
17
18  !$omp target map(tofrom:scalar_arr1%break_1, scalar_arr2%break_3)
19    scalar_arr2%break_3 = 10
20    scalar_arr1%break_1 = 15
21  !$omp end target
22
23  print*, scalar_arr1%break_1
24  print*, scalar_arr2%break_3
25end program main
26
27!CHECK: 15.
28!CHECK: 10.
29