キーワード:自分自身を直接または間接に引用することができます。再帰は,FUNCTION または SUBROUTINE 文でキーワード RECURSIVE が指定されているか,コンパイラ・オプションとして,または OPTIONS 文中で RECURSIVE が指定されている場合に許可されます。
関数が直接的な再帰関数で,配列値を持つ場合,FUNCTION 文で RECURSIVE キーワードと RESULT キーワードの両方を宣言する必要があります。
以下の場合では,副プログラムでの手続インタフェースは明示的となります。
サブルーチンに対して RECURSIVE が指定されている場合
関数に対して RECURSIVE と RESULT が指定されている場合
以下のいずれかが (直接または間接に) 適用される場合,RECURSIVE キーワードを宣言する必要があります。
副プログラムが自分自身を呼び出している。
副プログラムが,同じ副プログラム中の ENTRY 文によって定義された副プログラムを呼び出している。
同じ副プログラム中の ENTRY 手続が,以下のいずれかを呼び出している。
自分自身
同じ副プログラム中の他の ENTRY 手続
FUNCTION または SUBROUTINE 文によって定義された副プログラム
互換性
CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB
関連情報
ENTRY,FUNCTION,OPTIONS,SUBROUTINE,/recursive,プログラム単位と手続
例
! RECURS.F90 ! i = 0 CALL Inc (i) END RECURSIVE SUBROUTINE Inc (i) i = i + 1 CALL Out (i) IF (i.LT.20) CALL Inc (i) ! これは OUT でも動作します END SUBROUTINE Inc SUBROUTINE Out (i) WRITE (*,*) i END SUBROUTINE Out