This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Bingo! (was: Re: C++/6527: destructors called in wrong order:regression from 3.0.x)
- From: Mark Mitchell <mark at codesourcery dot com>
- To: Paolo Carlini <pcarlini at unitus dot it>
- Cc: "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>, janis187 <janis187 at us dot ibm dot com>, Jason Merrill <jason at redhat dot com>
- Date: Wed, 01 May 2002 17:07:13 -0700
- Subject: Re: Bingo! (was: Re: C++/6527: destructors called in wrong order:regression from 3.0.x)
- References: <3CD060E5.4070407@unitus.it><4410000.1020290585@gandalf.codesourcery.com> <3CD0775E.4000803@unitus.it>
--On Thursday, May 02, 2002 01:16:46 AM +0200 Paolo Carlini
<pcarlini@unitus.it> wrote:
> Mark Mitchell wrote:
>
>> 2002-04-23 Jason Merrill <jason@redhat.com>
>>
>> PR c++/5504 - but re-breaks c++/411
>> * init.c (push_base_cleanups): Rename to perform_base_cleanups.
>> Expand base cleanups now rather than pushing them.
>> * decl.c (begin_destructor_body): Don't call push_base_cleanups.
>> (finish_destructor_body): Call perform_base_cleanups.
>> * cp-tree.h: Adjust prototype.
>>
>> Would you try reverting this patch and see what happens? That's
>> one thing that's been in this area recently.
>
>
> Mark --
>
> Reverting this patch indeed fixes c++/6527!
>
> But now? I think you all agreed that c++/5504 was release critical?!?
Don't worry. Jason just didn't think backwards when he made this change.
I've got the obvious backwardsization of his patch spinning now; it will
not affect 5504, but will fix your bug.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com