28 lines
587 B
Fortran
28 lines
587 B
Fortran
! { dg-do run }
|
|
! Test assumed shape arrays in procedures with multiple entry points.
|
|
! Arguments that aren't present in all entry points must be treated like
|
|
! optional arguments.
|
|
module entry_4
|
|
contains
|
|
subroutine foo(a)
|
|
integer, dimension(:) :: a
|
|
integer, dimension(:) :: b
|
|
a = (/1, 2/)
|
|
return
|
|
entry bar(b)
|
|
b = (/3, 4/)
|
|
end subroutine
|
|
end module
|
|
|
|
program entry_4_prog
|
|
use entry_4
|
|
integer :: a(2)
|
|
a = 0
|
|
call foo(a)
|
|
if (any (a .ne. (/1, 2/))) call abort
|
|
call bar(a)
|
|
if (any (a .ne. (/3, 4/))) call abort
|
|
end program
|
|
|
|
! { dg-final { cleanup-modules "entry_4" } }
|