blob: 035c9c1137759101578c6ba851ca21728d354281 [file] [log] [blame]
subroutine prob(m, n)
implicit none
integer, intent(in) :: m
integer, intent(out) :: n
integer, save :: saved = 10
target :: saved
integer, pointer :: p_saved
integer, parameter :: ROWS = 5, COLS = 7
real :: matrix(ROWS, COLS)
p_saved => saved
call new_procedure(COLS, ROWS, m, matrix, n, saved)
print *, n, m, saved, p_saved
end subroutine
subroutine new_procedure(COLS, ROWS, m, matrix, n, saved)
implicit none
integer :: COLS
integer :: ROWS
integer, intent(in) :: m
real :: matrix(ROWS, COLS)
integer, intent(out) :: n
integer, target :: saved
matrix(:, :) = 0.0 !<<<<<START
n = 5 * m
saved = 2
!p_saved => saved
!p_saved = p_saved + 1
print *, n, m, saved !<<<<<END
end subroutine
program main; call prob(3, n); call prob(3, n); print *, n; call flush; stop; end program