runtime segmentation fault for formatted write statement
Christopher S. Talley
chris.talley@cfdrc.com
Tue Apr 9 16:34:00 GMT 2019
I have a legacy FORTRAN code that compiles on Compaq Visual FORTRAN 6.6, Intel FORTRAN, and g95. I am trying to get this code to build with gfortran-8.3.0 and I keep getting the following runtime error:
Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Backtrace for this error:
#0 0xf7f82fff in ???
#1 0x805d238 in format_hash
at ../../../../gcc-8.3.0/libgfortran/io/format.c:128
#2 0x805d238 in find_parsed_format
at ../../../../gcc-8.3.0/libgfortran/io/format.c:163
#3 0x804e4c8 in data_transfer_init
at ../../../../gcc-8.3.0/libgfortran/io/transfer.c:2842
#4 0x8048b38 in MAIN__
at debug/example.for:6
#5 0x8048b8a in main
at debug/example.for:34
Segmentation fault (core dumped)
I’ve created the following example that reproduces the problem when compiled as follows:
> gfortran example.for -std=gnu -cpp -m32 -fdefault-real-8 -O0 -g3 -malign-double -ftracer -fcaller-saves --static -o example
=============================
C example.for
PROGRAM MAIN
C SUPPLY HEADER INFORMATION
WRITE(*,10)
C********************************************************************
10 FORMAT(12X,'*************************************************',/,
& 12X,' X X X X X (XXXXXXX XXX) ',/,
& 12X,' XXXXXXXXXXX XXXXX XXXXXX XXXXXXXXXX XXXXXXX ',/,
& 12X,' XXXXXXXXX XXXX ',/,
C
#ifdef __G95__
& 12X,' Built with G95 Compiler ',/,
#endif
#ifdef __GFORTRAN__
& 12X,' Built with GFORTRAN Compiler ',/,
#endif
#ifdef __INTEL_COMPILER
& 12X,' Built with Intel Compiler ',/,
#endif
#ifdef __VF_VER
& 12X,' Built with CVF 6.6 Compiler ',/,
#endif
& 12X,' ',/,
& 12X,' XXXXXXXXX XX XXXX/XXXXXXXX XXXXX XXXXXX XXXXXX ',/,
& 12X,' XXXXXXXXX (X) XX XXXXXXXX XXXXX XXXXXX XXXXXX ',/,
& 12X,' ',/,
& 12X,' X XXXXXXXXXXX XXXXXXXX XXXXXXX XX XXXXXXXXX XXXX ',/,
& 12X,' XXXXX, XXXXXXXXX, XXXXXXXXXXXX XXX XXXXXXXXXXXXXX',/,
& 12X,' XX X XXXX XXXXXXX. ',/,
& 12X,'*************************************************',//)
END PROGRAM
=============================
Thanks,
Chris
More information about the Fortran
mailing list