HP Fortran v3.1 Release Notes

HP Fortran Release Notes
Previous Fixes
Chapter 136
PHSS_24486
SEGV was received while compiling at +O4.
Fixes not present in prior patch releases
Occasionally, there was an optimization problem with the use of the option +O2. Different
results were calculated if the binary was compiled with different optimization levels.
When compiled in 64-bit mode, the executable received a bus error.
The debug information for arrays of characters passed by descriptor character
cstring_arr (:,:)*(*) was incorrect.
Occasionally, v2.3 did not autopar parallelize the indicated loop.
When using +Onolimit +Odataprefetch +O3 +Oprocelim +Olibcalls, ccom entered
an infinite loop.
•Previously, +Onoloop_transform inhibited loop parallelization.
Fortran range checking displayed line #0 instead of the actual line number.
+Onoinline did not work for call sites that were transformed from indirect calls to direct
calls.
•Fortran ignored 17 loop_parallel directives in LS-DYNA.
+DA1.1 +Odataprefetch generated an internal code error.
Inlining dropped the register storage class of certain variables.
The compiler would occasionally have an abnormal termination when compiling at
optimization level +O3 or higher.
Wrong answers were generated when computing polynomials at +Oparallel.
Occasionally, inlined code created a situation where loop recognition failed to recognize a
perfect nest, thereby disabling a critical interchange. The HLO loop recognition phase has
been improved to handle such cases.
•Previously, +i8 +O2 caused an infinite loop in the compiler.
•Using +i8 and +O2 occasionally resulted in an internal error with the Fortran compiler.
There were instances when the compiler produced an internal error if you were using ‘-g’.
The Fortran driver was updated to infer +DA<model> machine parameters.