blob: 1e61d91fb6db94b713c87c16925a71ddcbb3dbcc [file] [log] [blame]
! { dg-do run }
! { dg-additional-options "-fcheck=array-temps" }
!
! PR fortran/55978 - comment#19
!
! Test passing of (missing) optional dummy to optional array argument
program test
implicit none
integer, pointer :: p(:) => null()
call one (p)
call one (null())
call one ()
call three ()
contains
subroutine one (y)
integer, pointer, optional, intent(in) :: y(:)
call two (y)
end subroutine one
subroutine three (z)
integer, allocatable, optional, intent(in) :: z(:)
call two (z)
end subroutine three
subroutine two (x)
integer, optional, intent(in) :: x(*)
if (present (x)) stop 1
end subroutine two
end