This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
ICE C++ 2.96 within last week.
- To: "Gcc-Bugs (E-mail)" <gcc-bugs at gcc dot gnu dot org>
- Subject: ICE C++ 2.96 within last week.
- From: Donn Terry <donnte at microsoft dot com>
- Date: Fri, 24 Mar 2000 11:09:24 -0800
The following 2 line (complete) program yields the
error below. This showed up within the last week
(since March 18, I believe). The source is minimized
from gcc/cc/tinfo2.cc. The first line comes from the
system stddef.h, the second from gcc/include/new.
typedef unsigned int size_t;
void *operator new(size_t, void *place) throw() { return place; }
cc1plus: warning: Ignoring command line option '-Wtraditional'
test2.cc: In function `void *operator new (unsigned int, void *)':
test2.cc:3: Unrecognizable insn:
(call_insn 248 236 252 (call_placeholder 243 237 0 0) -1 (nil)
(nil)
(nil))
test2.cc:3: Internal compiler error in `extract_insn', at recog.c:2044
test2.cc:3: Please submit a full bug report.
test2.cc:3: See <URL:http://www.gnu.org/software/gcc/bugs.html> for
test2.cc:3: instructions.
With command line:
$X/egcs.bin/gcc/xgcc -B$X/egcs.bin/gcc/
-I//C/Interix//opt/gcc.2.96/i386-pc-interix/include -O2 -idirafter
//C/Interix/usr/include -DIN_GCC -D__INTERIX -D_ALL_SOURCE -g -W -Wall
-Wtraditional -I./include -g1 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED
-I$X/egcs.bin/gcc -I$X/egcs.source/gcc -I$X/egcs.source/gcc/config
-I$X/egcs.source/gcc/../include test2.cc
Does this ring a bell with anyone? I'll take any tips I can get!
The exact offending RTL shows up in *01.jump, but doesn't
cause a problem until creating *.10.regmove, which is truncated to
:;; Function void *operator new (unsigned int, void *)
Starting forward pass...
Starting backward pass...
Starting backward pass...
Starting backward pass...
(Similar RTL shows up in *00.rtl, it seems to be replaced with an
identical but newly created insn in *01.jump.)
Donn Terry
(Speaking only for myself, of course.)