The HP Fortran version of the TIMEintrinsic takes a CHARACTER* argument; it will not accept an integer. Other intrinsics are similarly affected.
Procedure calls and definitionsWhen defining a procedure or making a procedure call, HP Fortran makes the following requirements, which HP FORTRAN 77™ overlooks:
•Function references must include the parentheses for the argument list, even when no arguments are supplied. For example, if foois a
•The argument list must not contain any extraneous commas, which HP FORTRAN 77 allows as “placeholders” for missing arguments. For example, the following is acceptable to f77 but not f90:
call foo (a,)
To specify optional arguments in HP Fortran, use the OPTIONAL statement.
•The SYSTEM INTRINSIC directive, by which HP FORTRAN 77 determines interfaces, is not supported by HP Fortran.
•In HP Fortran, recursive procedures must be so declared with the RECURSIVEkeyword; HP FORTRAN 77 allows recursive procedures by default.
Data types and constantsThe following HP FORTRAN 77™ extensions for data types and constants are not supported by HP Fortran:
•Double precision as the default storage for
•I andJ integer suffixes. To express the HP FORTRAN 77™ constant 10I(or I*2) in HP Fortran™, use 10_2; for 10J(orJ*4), use 10_4.
•Use of the 8#n and 16#n for octal and hex constants, respectively. In HP Fortran, use O"n" for octal constants and Z"n" for hexadecimal constants.
•BOZ constants (that is, constants in binary, octal, or hexadecimal format) in COMPLEXexpressions.
•
•Constant expressions that contain the **(exponentiation) operator, as in PARAMETER (RV=1**1.2).
•Use of thePARAMETER statement without parentheses, as in
PARAMETER i = 1
In free format, f90 treats this statement as an error. In fixed format, f90treats it as an assignment, identical to:
PARAMETERi = 1
In HP Fortran, use PARAMETER (i=1) instead.
•Use of theDATA statement to initialize integers with strings, as in:
DATA i /"abcd"/
•Use of COMPLEX(16)temporaries. For example, given the declarations:
COMPLEX(KIND=8) :: foo
REAL(KIND=16) :: bar
Incompatibilities with HP FORTRAN 77 133