[Bug middle-end/17902] New: [4.0] ICE from tree_verify_flow_info
gcc-bugzilla at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Oct 8 21:54:00 GMT 2004
g++ crashes compiling the code below, when i use
-O3 -mtune=pentiumpro:
$ /usr/local/gcc/libexec/gcc/i686-pc-linux-gnu/4.0.0/cc1plus -quiet x.cc -quiet -mtune=pentiumpro -O3
x.cc: In function `void fill_ntuples()':
x.cc:16: internal compiler error: tree check: expected class 'declaration', have 'statement' (label_expr) in tree_verify_flow_info, at /tree-cfg.c:3504
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
$
At this point, all my attempts to simplify the example further make the
crash go away.
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 code below with -O3 -mtune=pentiumpro.
------------------------------------------------
extern int foo();
bool a;
bool b;
bool f() { return a || b; }
struct A { ~A(){} };
struct vector
{
~vector() { if (f()) foo();}
A _M_impl;
};
void fill_ntuples()
{
vector smt_states;
int nbar4=0;
bool log3 = false;
for (int j=0;j<foo();j++){
int jdeter = foo();
if (0!=j&&jdeter==1) foo();
if (jdeter==1&&0!=j)
{
if (foo()==4){
nbar4++;
}
}
if (foo()==3) log3=true;
}
int jjhi=foo();
for (int jj=0;jj<jjhi;jj++)
{
if (
(jj==0)||
(jj==1&&log3&&nbar4>=3)
)
{
vector substates;
}
}
}
------------------------------------------------
------- Additional Comments From snyder at fnal dot gov 2004-10-08 21:54 -------
Fix:
<how to correct or work around the problem, if known (multiple lines)>
--
Summary: [4.0] ICE from tree_verify_flow_info
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=17902
More information about the Gcc-bugs
mailing list