[Bug c++/12751] [tree-ssa] [eh] wrong code: double destruction
pinskia at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Mon Oct 27 22:45:00 GMT 2003
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12751
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[tree-ssa] wrong code: |[tree-ssa] [eh] wrong code:
|double destruction |double destruction
------- Additional Comments From pinskia at gcc dot gnu dot org 2003-10-27 22:42 -------
With printing out "this" (which is what my first attempt was going to do):
extern int printf (__const char *__restrict __format, ...) throw ();
struct Y {
Y() { printf("Y(%p)::Y\n", this);}
~Y() { printf("Y(%p)::~Y\n", this); }
};
int main() {
Y y1;
Y y2;
switch(0) {
case 1:
{
Y y3;
return 0;
}
};
};
You get:
Y(0xbffffd10)::Y
Y(0xbffffd20)::Y
Y(0xbffffd20)::~Y
Y(0xbffffd10)::~Y
Y(0xbffffd10)::~Y
Also note that gimple looks fine (but eh has too many labels/gotos to figure out what is going on).
Note -fno-exceptions also fixes the problem.
More information about the Gcc-bugs
mailing list