I got stung by the '/ZEROISE' assumption that worked in the 32-bit implementation. And also, something else.
I did a specific initialization of a variable, and it did not work. The value (of a R*8 floating point) was x'2020202020202020'. Even though I initialized it to 0.0d0. I had to put code into the routine to specifically initialize it to 0.0d0 so the routine I was exercising would work (sort of).
The value of d_scale was incorrect.
The code read:
REAL*8:: PWIDTH=0.0d0,d_scale=0.0d0!,temp8
and yielded '20202020' when printed in hex (first 4 bytes).
However, when I added the statement:
data d_scale /0.0d0/
it all works! The initialization via a data statement works fine.
I cannot duplicate it in a smaller routine, so I'm asking what would be helpful to supply.
The reason I ask is that I am seeing things like this as I am starting to test the FORTRAN code after getting all the 'C' support routines fully compiled. If I need to use data statements and/or specific initializations for every routine instead of the other syntax, so be it, and it will take a very long time to correct all these instances. I have almost 500 functions/subroutines.
Bill