blob: f8a3dc864ccdfe988e403389d51fe4da30261d7e [file] [log] [blame]
! { dg-do compile }
! { dg-options "-fopenacc -fdump-tree-original" }
! { dg-require-effective-target fopenacc }
! PR fortran/78260
! Loosely related to PR fortran/94120
module m
implicit none
integer :: n = 0
contains
integer function f1()
!$acc declare present(f1)
!$acc kernels copyin(f1)
f1 = 5
!$acc end kernels
end function f1
integer function g1() result(g1res)
!$acc declare present(g1res)
!$acc kernels copyin(g1res)
g1res = 5
!$acc end kernels
end function g1
end module m
! { dg-final { scan-tree-dump-times "#pragma acc data map\\(force_present:__result_f1\\)" 1 "original" } }
! { dg-final { scan-tree-dump-times "#pragma acc kernels map\\(to:__result_f1\\)" 1 "original" } }
! { dg-final { scan-tree-dump-times "#pragma acc data map\\(force_present:g1res\\)" 1 "original" } }
! { dg-final { scan-tree-dump-times "#pragma acc kernels map\\(to:g1res\\)" 1 "original" } }