この質問は、私の前の質問に関連しています:コンパイラに省略された意図を意図 (inout) として解釈させる方法。省略されたインテントをインテント(inout)として解釈することは不可能に見えるため、インテント(in)の違反の問題は依然として存在します。
同じ例:
module test
implicit none
contains
subroutine fun1(x)
real(8), intent(in)::x
call fun2(x)
end subroutine
subroutine fun2(x)
real(8) :: x
x = 10
end subroutine
end module
このコードは、gfortran と ifort によってエラー/警告なしでコンパイルできます。だから私の質問は:
インテント(in)変数がインテントを省略してサブルーチンに渡されたときに、Fortranコンパイラにエラーを生成させる方法は?