6.2.2 Выражения переменной FORMAT
Выражение переменной FORMAT представляет собой оператор форматирования, который включает угловые скобки, окружающие выражение Fortran: FORMAT(I<N>). GNU Fortran не поддерживает это устаревшее расширение. Эффект выражений переменной формата может быть воспроизведён, используя более мощное (и стандартное) сочетание внутреннего вывода и форматов строк. Например, замените фрагмент кода такого вида:
WRITE(6,20) INT1 20 FORMAT(I<N+1>)
следующим:
c Variable declaration
CHARACTER(LEN=20) FMT
c
c Other code here...
c
WRITE(FMT,'("(I", I0, ")")') N+1
WRITE(6,FMT) INT1
или:
c Variable declaration
CHARACTER(LEN=20) FMT
c
c Other code here...
c
WRITE(FMT,*) N+1
WRITE(6,"(I" // ADJUSTL(FMT) // ")") INT1
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-6.4.0/gfortran/Variable-FORMAT-expressions.html