This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
PR 8134: C++ crash
- From: Mark Mitchell <mark at codesourcery dot com>
- To: gcc at gcc dot gnu dot org
- Cc: aoliva at redhat dot com, jason at redhat dot com, nathan at codesourcery dot com
- Date: Tue, 15 Oct 2002 11:35:21 -0700
- Subject: PR 8134: C++ crash
PR 8134 is a crash in force_store_init_value on the branch; it is a
regression.
The root problem here is that we were not handling zero-initialization
of pointers to members correctly. Alexandre tried to fix the problem,
but in the process introduced the crashes above. This was resolved on
the mainline with a rather substantial reworking of class layout code;
that was my patch to create a separate base class variant of each type.
What should we do on the branch?
The obvious choices are:
a) Nothing
In this case, stuff blows up badly.
b) Move my changes over.
As far as we know, these are correct -- but they are substantial,
and therefore risky.
c) Revert Alexandre's patch.
In this case, we get back to GCC 3.0-like behavior; incorrect
zero-initialization of some pointers-to-members.
I don't like any of these choices. I think I lean towards (c),
merely as a "devil you know" kind of choice. I can also do (b), if
people feel that's the right thing, but I'm nervous about somehow
making an inadvertant ABI change in the minor release.
Thoughts?
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com