--disable-new-gxx-abi

Joe Buck jbuck@racerx.synopsys.com
Wed Jan 24 11:30:00 GMT 2001


> > Maybe because GDB still doesn't support the v3 ABI, and people who're
> > building GCC like that are the kind of people who think debugging code
> > with a debugger is still the way to go? :-)
> Define support.
> We support the mangling.
> Basically everything but virtual functions will work, and
> virtual functions might work with dwarf2.

As someone who develops C++ all day, almost every day:

If virtual functions can't be called from gdb, C++ isn't supported
adequately for debugging.

> As the C++ support maintainer for GDB, i'm catching up as fast as I can.
> Supporting virtual functions for the new abi requires a lot of
> architectural rewriting, since the ABI hasn't changed since C++ support
> was first added to gdb a billion years ago, and their is no architecture
> in place to support multiple C++ abi's (Ie the old-abi stuff is hardcoded
> into routines it doesn't belong in).

Hmm.  But for the most common case -- single inheritance with no virtual
base clases -- isn't the code sequence to do a virtual function call
exactly the same with old and new ABIs?  I suppose I could live with a
first version that did virtual function table calls correctly only for
single inheritance, as long as I got a "sorry not implemented" rather than
a core dump if I tried to call a virtual on a non-implemented case.




More information about the Gcc mailing list