Re: C++ ptrmemfun break if FUNCTION_BOUNDARY < 2 * BITS_PER_UNIT

Daniel Berlin
2001-05-16T07:18:00Z

On 16 May 2001, Jason Merrill wrote:

> >>>>> "Daniel" == Daniel Berlin <dan@www.cgsoftware.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.

Well, it's much harder to do it without *some* type of gcc information.
Otherwise, we have a case of GCC knowing the real answer, and GDB having
to guess, which never ends up well. :)

>
> I'd rather put any special ABI attributes in the DW_TAG_compilation_unit,
> to avoid repetition.

This is fine too. In fact, any way you think is good to communicate it to
gdb, i'm fine with.

>
> Jason
>