This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: gcc 3.0.1 & C++ ABI issues
- To: jason_merrill at redhat dot com (Jason Merrill)
- Subject: Re: gcc 3.0.1 & C++ ABI issues
- From: Joe Buck <jbuck at synopsys dot COM>
- Date: Tue, 7 Aug 2001 18:04:28 -0700 (PDT)
- Cc: nathan at codesourcery dot com (Nathan Sidwell), mark at codesourcery dot com (Mark Mitchell), gcc at gcc dot gnu dot org (gcc at gcc dot gnu dot org)
Sigh, the quotes below are pretty messy, but ...
> >>>>> "Nathan" == Nathan Sidwell <nathan@codesourcery.com> writes:
>
> > Jason Merrill wrote:
> >>
> >> >>>>> "Mark" == Mark Mitchell <mark@codesourcery.com> writes:
> >>
> >> > What do you think we should do in the 3.0.1 time frame? Can we get
> >> > a reasonably safe patch that will fix the correctness issue and
> >> > not cause the (minor) pessimization? (This would clearly be the
> >> > ideal solution.)
> >>
> >> I think a patch that just disables the optimization for the case of copying
> >> an lvalue of empty class type would be fine for 3.0.1.
>
> > This is insufficient. I attach a test case where we assign a
> > temporary into an empy base, and clobber what it overlays.
Jason:
> Yes, your change to the assignment case is good; I was only thinking about
> initialization. The case I still want to optimize is the case of
> initializing an empty class object from a temporary.
Our STL implementation has lots of code where a dummy argument whose type
is an empty class is used to specialize templates. Are we getting
pessimization because of this?