This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: g++.law/operators24.C and --enable-checking=gcac
- To: zack at wolery dot cumb dot org
- Subject: Re: g++.law/operators24.C and --enable-checking=gcac
- From: Mark Mitchell <mark at codesourcery dot com>
- Date: Tue, 06 Jun 2000 10:35:07 -0700
- Cc: gcc-bugs at gcc dot gnu dot org
- Organization: CodeSourcery, LLC
- References: <20000606100922.B26551@wolery.cumb.org>
The fix is that pushdecl should not be trying to merge things that
have the same DECL_ASSEMBLER_NAME, but different DECL_NAMEs. That's
weird. The `__builtin_new' that the user declares there should have
nothing to do with `::operator new'. Of course, a user who defines
__builtin_new may be sadly disappointed when she finds it to be
replacing `operator new'. The new ABI will reduce the probability of
this kind of bug because __builtin_new is spelled _Z<some ugliness>
that would be a strange name for a function.
I'll look into fixing this. I'm trying to reduce G++'s reliance on
DECL_ASSEMBLER_NAME in as many places as possible. Someone will
someday want to add a new mangling scheme, and we want to mangle
lazily, and both of those require that the front-end pretty much
ignore DECL_ASSEMBLER_NAME -- which makes sense, since it is, after
all, a front-end...
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com