[Bug middle-end/17525] New: 4.0: ICE in emit_move_insn (non-BLKmode arg)
gcc-bugzilla at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Thu Sep 16 19:27:00 GMT 2004
g++ gives an ICE on the source below:
$ ./cc1plus -quiet x.cc
x.cc: In member function `B& B::operator=(const B&)':
x.cc:14: internal compiler error: in emit_move_insn, at expr.c:2485
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
$
Here's where it's crashing:
2484 gcc_assert (mode != BLKmode
2485 && (GET_MODE (y) == mode || GET_MODE (y) == VOIDmode));
2486
because here mode == BLKmode.
(gdb) call debug_rtx(x)
(reg:BLK 62)
(gdb) call debug_rtx(y)
(mem/s:BLK (reg:SI 59 [ D.1610 ]) [0 S4 A32])
Environment:
System: Linux karma 2.6.8.1 #20 Mon Sep 13 23:48:47 EDT 2004 i686 i686 i386 GNU/Linux
Architecture: i686
<machine, os, target, libraries (multiple lines)>
host: i686-pc-linux-gnu
build: i686-pc-linux-gnu
target: i686-pc-linux-gnu
configured with: /home/sss/gcc/gcc/configure --prefix=/usr/local/gcc --enable-threads=posix --enable-long-long --enable-languages=c,c++,f95
How-To-Repeat:
Compile the following (optimization not required):
--------------------------------------------------
struct A
{
~A();
int a;
};
struct B : public A
{
virtual ~B();
};
void run (B& b, B& b1)
{
b1 = b;
}
--------------------------------------------------
------- Additional Comments From snyder at fnal dot gov 2004-09-16 19:27 -------
Fix:
<how to correct or work around the problem, if known (multiple lines)>
--
Summary: 4.0: ICE in emit_move_insn (non-BLKmode arg)
Product: gcc
Version: 0.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: snyder at fnal dot gov
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17525
More information about the Gcc-bugs
mailing list