This is the mail archive of the
mailing list for the GCC project.
Re: C++ ptrmemfun break if FUNCTION_BOUNDARY < 2 * BITS_PER_UNIT
- To: Daniel Berlin <dan at www dot cgsoftware dot com>
- Subject: Re: C++ ptrmemfun break if FUNCTION_BOUNDARY < 2 * BITS_PER_UNIT
- From: Jason Merrill <jason_merrill at redhat dot com>
- Date: 16 May 2001 13:53:21 +0100
- Cc: Andrew Cagney <ac131313 at cygnus dot com>, Alexandre Oliva <aoliva at redhat dot com>, Jim Wilson <wilson at cygnus dot com>, <gcc at gcc dot gnu dot org>, <gcc-patches at gcc dot gnu dot org>, <gdb at sources dot redhat dot com>
- References: <Pine.LNX.firstname.lastname@example.org>
>>>>> "Daniel" == Daniel Berlin <email@example.com> writes:
> And when it comes to C++ stuf, i refuse to hard code any more stuff, after
> just spending months cleaning up the crud from 5 years of doing that.
>> Either the v3 ABI would need to specify the exact mechanism that is
>> valid for ISA foo (i.e. GDB would would be wired to assume that all MIPS
>> use mechanism XYZ) or the debug/object info would need to describe the
>> mechanism being used so that GDB could adjust its self accordingly.
> It's easiest to do this in debug info.
> At least, for dwarf (I dunno how to do the same in stabs).
> In the type die of the ptr-to-member die, just add a GCC specific
> attribute that says which bit to check for virtuality, and i'll modify
> gdb to handle it right (by telling the C++ ABI abstraction layer which
> bit to check)
So you'll hardcode the two possible representations, and rely on GCC to
tell you which one to use? I suppose that's reasonable.
I'd rather put any special ABI attributes in the DW_TAG_compilation_unit,
to avoid repetition.