Node: Expressions in FORMAT Statements, Next: Explicit Assembler Code, Previous: FLUSH Statement, Up: Missing Features
FORMAT
Statements
g77
doesn't support FORMAT(I<J>)
and the like.
Supporting this requires a significant redesign or replacement
of libg2c
.
However, g77
does support
this construct when the expression is constant
(as of version 0.5.22).
For example:
PARAMETER (IWIDTH = 12) 10 FORMAT (I<IWIDTH>)
Otherwise, at least for output (PRINT
and
WRITE
), Fortran code making use of this feature can
be rewritten to avoid it by constructing the FORMAT
string in a CHARACTER
variable or array, then
using that variable or array in place of the FORMAT
statement label to do the original PRINT
or WRITE
.
Many uses of this feature on input can be rewritten this way as well, but not all can. For example, this can be rewritten:
READ 20, I 20 FORMAT (I<J>)
However, this cannot, in general, be rewritten, especially
when ERR=
and END=
constructs are employed:
READ 30, J, I 30 FORMAT (I<J>)