HP Fortran v3.1 Release Notes

HP Fortran Release Notes
Previous Fixes
Chapter 138
modulo(x,y) returned incorrect results when -1 < x/y < 0.
•The ES format descriptor printed zero values incorrectly.
A never-referenced variable name which was also a common block name caused syntax
errors when used in an EQUIVALENCE statement.
Using 4-byte integer DO loop indices in wide mode (+DA2.0W) incorrectly inhibited a wide
range of optimizations and auto-parallelization.
Certain uses of variable length character variables with the POINTER attribute caused
intermittent aborts at runtime.
NAMELIST input of character arrays was not compatible with FORTRAN 77 (non-standard
usage of a scalar subscript but multiple values is now accepted).
NAMELIST READs in wide mode (+DA.0W) sometimes corrupted memory and caused
unpredictable aborts.
Some character expressions in a SELECT CASE statement were evaluated more than once.
SYSTEM_CLOCK sometimes returned an invalid value.
Short Hollerith initializers (that is, 1h3) in DATA statements for REAL variables caused an
internal error.
•Using an INTENT(IN) dummy argument in a subsequent initialization expression
sometimes caused an internal error.
Referencing a character variable via a substring and later as if it were a function caused
an internal error. Now a syntax error is issued.
Routines which indirectly used the same module many times caused the compilers symbol
table to become corrupted. The compiler now detects and ignores the indirect redundant
USE statements (it has always ignored directly visible redundant USE statements).
Several internal errors caused by the +DA2.0 flag have been fixed.
All of the compiler directive code has been reimplemented. Many observed and
undiscovered bugs with memory class and loop-based directives have been fixed.
An unsubscripted integer array used as a FORMAT is now assumed to be a character string
format, and not an ASSIGN statement format.
Zero-length character type array constructors caused an internal error.
•The ftnxx environment variables were ignored in wide mode.
When a library (.a file) was listed several times on the command line, all but one of them
was incorrectly removed.