[Bug c++/40163] [4.5 Regression] null pointer in remove_unreachable_regions
reichelt at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri May 15 22:53:00 GMT 2009
------- Comment #2 from reichelt at gcc dot gnu dot org 2009-05-15 22:53 -------
Confirmed. Reduced testcase (crahses already with "-O"):
===================================================
struct A
{
void foo(int*, int);
};
struct B
{
B();
~B() { A().foo(p, q - p); }
int *p, *q;
};
struct C : B
{
C() { bar(); }
~C() { baz(bar(), bar()); }
int bar();
void baz(int, int);
};
struct D
{
D(C*);
~D() { try { delete p; } catch (...) {} }
C* operator->() { delete p; return 0; }
C* p;
};
struct E
{
E() : d(new C) { d->baz(d->bar(), d->bar()); }
D d;
};
struct F
{
F();
virtual ~F();
E e1, e2, e3;
};
F::F() {}
F::~F() {}
===================================================
--
reichelt at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |reichelt at gcc dot gnu dot
| |org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2009-05-15 22:53:07
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40163
More information about the Gcc-bugs
mailing list