Re: c++ debugging hosed

Daniel Jacobowitz
2001-11-26T15:38:00Z

On Sun, Nov 25, 2001 at 03:29:08PM -0500, Daniel Berlin wrote:
>
>
> On Sun, 25 Nov 2001, Benjamin Kosnik wrote:
>
> >
> > > No, it's relevant to STABS, too.
> > > It's due to not properly searching virtual baseclasses.
> > > I might still have the changes to do that somewhere, if someone wants
> > > them.
> >
> > This has been broken for some time now. I'd appreciate it if it got
> > fixed, so that C++ could be debugged properly.
> I'm sure a lot of people would.
> Unfortunately, it appears I don't have the code i had worked up to
> abstract out the base class offset finding anymore.
> What's happening is that GDB wants to know the baseclass offset, and
> the routine it uses is tuned to either gnu-v2 or hp aCC (it checks
> for something only hp's debug readers fill in, and if it doesn't find
> it, it assumes gnu-v2), and the gnu-v2 code either returns the wrong
> value (weird errors occur), or -1, which gives you "virtual baseclass
> botch"/attempts to deref int values as pointers.
>
> baseclass_offset needs to be abstracted into the cp abi model, and all
> existing uses need to use it.

Could you clarify what symptom this fix you're discussing is supposed
to solve? I thought it was the one I was working on, but
baseclass_offset actually does nothing ABI specific at all.

Meanwhile the problem that was most annoying me wasn't even covered by
the testsuite. Patch and tests coming up in the next hour.

--
Daniel Jacobowitz Carnegie Mellon University
MontaVista Software Debian GNU/Linux Developer