Re: c++ debugging hosed

Eli Zaretskii
2001-11-25T09:24:31Z

> From: Jason Merrill <jason@redhat.com>
> Date: Wed, 14 Nov 2001 16:02:11 +0000
>
> > --with-dwarf2:
> > (gdb) p *this
> > can't find class named `std::basic_filebuf<char, std::char_traits<char> >', as given by C++ RTTI
>
> > default:
> > (gdb) p *this
> > Attempt to take contents of a non-pointer value.
>
> > Sadly, this bug has been around for 2 weeks now. It's making debugging
> > C++ code more difficult than it should be. Any hope for a quick fix?
>
> I just updated my gdb for the first time in months and ran into the same
> problem. Looks like the V3 ABI support code isn't ready for prime time.
> Until it is, you can disable it with this patch:
>
> *** gnu-v3-abi.c.~1~ Wed Nov 14 12:33:51 2001
> --- gnu-v3-abi.c Wed Nov 14 15:59:39 2001
> *************** init_gnuv3_ops (void)
> *** 349,355 ****
> --- 360,368 ----
> void
> _initialize_gnu_v3_abi (void)
> {
> + #if 0
> init_gnuv3_ops ();
>
> register_cp_abi (gnu_v3_abi_ops);
> + #endif
> }

The above code is in GDB 5.1, and it isn't disabled. I'm about to
prepare a binary release of the DJGPP port, so I'd like to ask whether
people here would recommend commenting defining away this code. Is
this only a DWARF2 issue, or is the same problem relevant to stabs,
say?