Скажем, у меня есть код ниже:
program test
call foo
call foo
contains
subroutine foo
integer(8),dimension(:),allocatable:: var1
allocate(var1(10))
...
return
end subroutine foo
end
будет ли переменная var1 выделяться дважды? (Думаю, ДА ). Если она выделяется для каждого вызова, освободится ли память, выделенная при первом вызове?