mea@MEA.UTU.FI (Matti Aarnio) (11/15/89)
Dear Sirs,
My environment is Interactive Systems Corp. IX/386, which is
quite closely System V r 3.2, but includes BSD (4.2) TCP/IP, NFS, and
X-Windows.
Below is an minimal test program that caused gcc 1.36 to dump
core. Stack trace: (arguments missing from COFF outputs. )
---------------------
kill: address 0x6955c
kill() has no subroutine linkage (pushl)
Maybe kill(0x3592,6) from abort() [abort.c] <-- My guess
Maybe kill() from yyparse() [c-parse.tab.c:213]
abort() [abort.c]
float_signal(8) [toplev.c:847]
output_constant() [varasm.c:1764]
get_or_assign_label() [varasm.c:1226]
output_constant_def(exp=0x40bb24) [varasm.c:1262]
expand_expr() [expr.c:2251]
store_expr() [expr.c:1823]
expand_assignment() [expr.c:1767]
expand_decl_init(decl=0x40ba3c) [stmt.c:2094]
finish_decl(decl=0x40ba3c,init=0x40baf0,asmspec_tree=0) [c-decl.c:1976]
yyparse() [c-parse.tab.c:635]
compile_file(name=/usr/tmp/cca13712.cpp) [toplev.c:1118]
main(argc=8,argv=0x7ffffdbc,envp=0x7ffffde0) [toplev.c:1991]
---------------------
cc -c test.c # AT&T compiler
"test.c", line 3: floating point constant folding causes exception
gcc -c -v test.c # gcc 1.36 created with: make i386-sysv. No robotussin.
gcc version 1.36
/usr/local/lib/gcc-cpp -v -undef -D__GNUC__ -Dunix -Di386 -D__unix__ -D__i386__ test.c /usr/tmp/cca13712.cpp
GNU CPP version 1.36
/usr/local/lib/gcc-cc1 /usr/tmp/cca13712.cpp -quiet -dumpbase test.c -version -o /usr/tmp/cca13712.s
GNU C version 1.36 (80386, ATT syntax) compiled by GNU C version 1.36.
default target switches: -m80387
gcc: Program cc1 got fatal signal 6.
cat test.c
main()
{
float z_max = -1e100;
}
I know this is bad C, but 'fatal signal 6' isn't too helpfull...
Actually this kind of code was inside graph3d package. (comp.sources.unix,
or comp.sources.misc distribution quite recently.)
/Matti Aarnio <mea@mea.utu.fi>
PS: I don't yet have news input on my machine, please tell me directly
what you did for it.