akaGM
Platinum Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору implicit none external test_var1, test_var2, test_var3 integer :: y y = 1 call test_var1(y) print *, 'after sub = ', y y = 2 call test_var2(y) print *, 'after sub = ', y y = 3 call test_var3(y) print *, 'after sub = ', y end subroutine test_var1(x) ! default fortran calling conventions implicit none integer :: x print *, 'in sub = ', x x = 10 end subroutine test_var1 subroutine test_var2(x) implicit none integer, intent(inout) :: x print *, 'in sub = ', x x = 20 end subroutine test_var2 subroutine test_var3(x) implicit none integer :: x !DEC$ ATTRIBUTES REFERENCE :: x print *, 'in sub = ', x x = 30 end subroutine test_var3 |