After moving from ftn95 version 8.61 to 8.62 I observed an AMD backend failure if compiling the following source named backup_failure.for:
SUBROUTINE GETINW (TXART,IW,RW,TW)
!+ OK for ftn95 8.61 , error for ftn95 8.62: AMD backend failure:Internal error - instruction offset out of range
INCLUDE 'datlizp.for'
INCLUDE 'p0918in0.for'
INCLUDE 'p0918in1.for'
CHARACTER
* TXART*(*),TW*(*)
INTEGER*4 IW
REAL*4 RW
REAL*8 DW
C DW=1.0 !+ ok
DW=ZW(LKP) !+ bad
RETURN
END
The exact error message when using ftn95 8.62 is
*** AMD backend failure:Internal error - instruction offset out of range
the command for building is
ftn95 backup_failure.for /CFPP /DEFINE SALFORD64 1 /ALT_KINDS /FIXED_FORMAT /64
The compile succeeds and creates the object file expected if using ftn95 8.61 for compiling.
Moreover if I substitute
DW=ZW(LKP)
by
DW=1.0
in file backup_failure.for, then the compile succeeds for both version ftn95 8.61 and 8.62.
Unfortunately I cannot yet reproduce the error without using the 3 include files above the sizes of which are not so small.
I will try to reduce the size of the include files to create a 'real' reproducer.
This problem is occuring for many files which have successfully been compiled when using ftn95 8.61.
Regards Dietmar