A while ago I mentioned that Fortran 90 on an IBM SP gave an internal
compiler error when attempting to compile a program I had. I am making
available a simple test program, derived from the original 'problem
program', so people can try it out if they like. (It is an odd-looking
code with a jump out of a DO loop as well as an infinite loop and it turns
out there was a bug in the original program. Compilers are usually
expected to come up with sensible error messages though, instead of just
giving up in exasperation...)
Compile it with 'xlf -qsmp=omp -c intcomperr.f' to get the internal
compiler error:
** intcomperr === End of Compilation 1 ===
1586-494 (U) INTERNAL COMPILER ERROR: Signal 11.
1501-511 Compilation failed for file intcomperr.f.
It will successfully compile with 'xlf -c intcomperr.f'. The IBM SP had
IBM XL Fortran version 7.1.0.1 installed and AIX version 4.3,
William Nicholson
Source code:
program intcomperr
C
implicit none
C
integer nrow, nsam
integer j, k
integer mode
C
read(*,*) nrow, nsam
read(*,*) MODE
DO J=1,NROW
GO TO(100,200),MODE
GOTO 5
100 continue
write(*,*) J
GO TO 5
200 continue
write(*,*) J
5 continue
C
DO 10 K=2,NSAM
GOTO 100
10 CONTINUE
ENDDO
stop
end
|