-fpedantic command-line option specifies that
is to warn about code that is not standard-conforming.
This is useful for finding
g77 accepts that other compilers might not accept.
(Note that the
-fno-f90 in force, ANSI FORTRAN 77 is used as the standard
for conforming code.
-ff90 in force, Fortran 90 is used.
The constructs for which
g77 issues diagnostics when
-fno-f90 are in force are:
SUBROUTINE X(N) REAL A(N) ...
A is not listed in any
and thus is not a dummy argument.
READ (5), Iand
WRITE (10), J.
These commas are disallowed by FORTRAN 77, but, while strictly
superfluous, are syntactically elegant,
especially given that commas are required in statements such
READ 99, I and
PRINT *, J.
Many compilers permit the superfluous commas for this reason.
DOUBLE COMPLEX, either explicitly or implicitly.
An explicit use of this type is via a
DOUBLE COMPLEX or
IMPLICIT DOUBLE COMPLEX statement, for examples.
An example of an implicit use is the expression
This expression is prohibited by ANSI FORTRAN 77
because the rules of promotion would suggest that it
DOUBLE COMPLEX result--a type not
provided for by that standard.
INTEGER(KIND=1)in contexts such as:
FORMATrun-time expressions (not yet supported).
READ (UNIT=3.2), I)
CHARACTERentities in specification statements.
INTEGERin contexts such as arithmetic
COMPLEXexpressions are disallowed anyway).
CHARACTERentities, as in:
PRINT *, ''
PRINT *, 'hello'(3:5)
PRINT *, FOO(,3)
SAVEd (for targets where program units in a single source file are "glued" together as they typically are for UNIX development environments).
(In the GNU Fortran language,
DATA I/1/ may be followed by
-fpedantic option disallows both of these.)
CALL FOO; CALL BAR
&in column 1 of fixed-form source (to indicate continuation).
CHARACTERconstants to initialize numeric entities, and vice versa.
-fpedantic is specified along with
following constructs result in diagnostics: