[Bug tree-optimization/40760] New: [4.3/4.4/4.5 Regression] unbounded recursion in the gimplifier
bonzini at gnu dot org
gcc-bugzilla@gcc.gnu.org
Wed Jul 15 06:06:00 GMT 2009
The testcase from PR/2161:
#define ONE else if (0) { }
#define TEN ONE ONE ONE ONE ONE ONE ONE ONE ONE ONE
#define HUN TEN TEN TEN TEN TEN TEN TEN TEN TEN TEN
#define THOU HUN HUN HUN HUN HUN HUN HUN HUN HUN HUN
void foo()
{
if (0) { }
/* 11,000 else if's. */
THOU THOU THOU THOU THOU THOU THOU THOU THOU THOU THOU
}
as well as the following:
#define OONE && (a()
#define OTEN OONE OONE OONE OONE OONE OONE OONE OONE OONE OONE
#define OHUN OTEN OTEN OTEN OTEN OTEN OTEN OTEN OTEN OTEN OTEN
#define OTHOU OHUN OHUN OHUN OHUN OHUN OHUN OHUN OHUN OHUN OHUN
#define CONE )
#define CTEN CONE CONE CONE CONE CONE CONE CONE CONE CONE CONE
#define CHUN CTEN CTEN CTEN CTEN CTEN CTEN CTEN CTEN CTEN CTEN
#define CTHOU CHUN CHUN CHUN CHUN CHUN CHUN CHUN CHUN CHUN CHUN
void foo()
{
a()
/* 11,000 right-associated &&'s with side effects. */
OTHOU OTHOU OTHOU OTHOU OTHOU OTHOU OTHOU OTHOU OTHOU OTHOU OTHOU
CTHOU CTHOU CTHOU CTHOU CTHOU CTHOU CTHOU CTHOU CTHOU CTHOU CTHOU;
}
fail with a segmentation fault do to recursion that is proportional to the
size of the program.
--
Summary: [4.3/4.4/4.5 Regression] unbounded recursion in the
gimplifier
Product: gcc
Version: unknown
Status: UNCONFIRMED
Keywords: rejects-valid
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bonzini at gnu dot org
BugsThisDependsOn: 2161
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40760
More information about the Gcc-bugs
mailing list