! Test reductions on dummy arguments inside modules.

! { dg-do run }

module prm
  implicit none

contains

subroutine param_reduction(var)
  implicit none
  integer(kind=8) :: var
  integer      :: j,k

!$acc parallel copy(var)
!$acc loop reduction(+ : var) gang
 do k=1,10
!$acc loop vector reduction(+ : var)
    do j=1,100
     var = var + 1.0
    enddo
 enddo
!$acc end parallel
end subroutine param_reduction

end module prm

program test
  use prm
  implicit none

  integer(8) :: r

  r=10.0
  call param_reduction (r)

  if (r .ne. 1010) stop 1
end program test
