This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [C++ PATCH]: Fix 13387
- From: Mark Mitchell <mark at codesourcery dot com>
- To: Nathan Sidwell <nathan at codesourcery dot com>
- Cc: Mark Mitchell <mitchell at codesourcery dot com>, gcc-patches at gcc dot gnu dot org
- Date: Mon, 15 Dec 2003 08:26:48 -0800
- Subject: Re: [C++ PATCH]: Fix 13387
- Organization: CodeSourcery, LLC
- References: <3FDDC042.4080507@codesourcery.com>
- Reply-to: mark at codesourcery dot com
On Mon, 2003-12-15 at 06:08, Nathan Sidwell wrote:
> Mark,
> this fixes 13387 where we were clobbering the tail padding parts of a base
> object. Fixed by using CLASSTYPE_AS_BASE, when that has a different size.
>
> booted & tested on i686-pc-linux-gnu, ok?
+ /* And it should be in the same alias set. */
+ TYPE_ALIAS_SET (CLASSTYPE_AS_BASE (t)) = TYPE_ALIAS_SET (t);
That only works right if "TYPE_ALIAS_SET (t)" has already been set.
(These things get set lazily.) I think you should fix cxx_get_alias_set
to coordinate the assignment instead.
Does that make sense?
--
Mark Mitchell <mark@codesourcery.com>
CodeSourcery, LLC