Mail Archives: pgcc/1998/11/09/23:23:01
I downloaded the Foyer Consulting rpm distribution of the pgcc and pgcc-g77
fir the i686 processors last weekend. I tried compiling one of my production
programs that compiled ok with the version of g77 that came with Redhat
Linux package 5.1. The compile failed with an internal compiler error.
I was able to isolate the problem to a small routine. The needed data
follows since it is rather short:
The script file contents used to invoke g77:
#!/bin/sh
/opt/pgcc/bin/g77 -fversion -fno-globals -fno-silent 2>outp -v -O0 check2.f
The contents of check2.f:
C
C
C
C
SUBROUTINE TO_UPPER(
M STRING)
C
C Convert a character string from lower case to upper case
C Modified from USGS routine.
CHARACTER*(*) STRING
C + + + ARGUMENT DEFINITIONS + + +
C STRING - character string to be made upper case
C + + + LOCAL VARIABLES + + +
INTEGER I, ICH, IEND
C + + + INTRINSICS + + +
INTRINSIC ICHAR, LEN, CHAR
C***********************************************************************
IEND = LEN(STRING)
DO 10 I = 1, IEND
ICH = ICHAR(STRING(I:I))
IF(ICH.GE.97 .AND. ICH.LE.122) THEN
C Character is lower case.
STRING(I:I)= CHAR(ICH-32)
ENDIF
10 CONTINUE
RETURN
END
The contents of outp after the failure of the compiler:
g77 version pgcc-2.91.57 19980901 (egcs-1.1 release) (from FSF-g77 version
0.5.24-19980804)
Driving: /opt/pgcc/bin/g77 -fversion -fno-globals -fno-silent -v -O0
check2.f -lg2c -lm
Reading specs from /opt/pgcc/lib/gcc-lib/i686-pc-linux-gnu/pgcc-2.91.57/specs
gcc version pgcc-2.91.57 19980901 (egcs-1.1 release)
/opt/pgcc/lib/gcc-lib/i686-pc-linux-gnu/pgcc-2.91.57/f771 check2.f -quiet
-dumpbase check2.f -O0 -version -fversion -fversion -fno-globals
-fno-silent -o /tmp/ccmirqaD.s
GNU F77 version pgcc-2.91.57 19980901 (egcs-1.1 release)
(i686-pc-linux-gnu) compiled by GNU C version pgcc-2.91.57 19980901
(egcs-1.1 release).
GNU Fortran Front End version 0.5.24-19980804
to_upper:
com.c:1905: failed assertion `ix != FFECOM_gfrt'
g77: Internal compiler error: program f771 got fatal signal 6
I hope this can be used to sniff out the problem. Meanwhile I will seek
an alternative to this routine and see if I can get my program to compile.
Thanks
Delbert D. Franz
ddf AT lka DOT com
- Raw text -