[rfa/c++] cp_lookup_rtti_type, take 2

Daniel Jacobowitz drow@mvista.com
Fri Dec 5 05:01:00 GMT 2003

On Thu, Dec 04, 2003 at 11:22:37PM -0500, Michael Chastain wrote:
> Cool, I will commit this patch now.
> > The only reason we can do it by symbol lookup at all is the One
> > Definition Rule, and we should probably be restricting ourselves to the
> > objfile in which we found the minimal symbol.
> Yes, it's still very flaky.  The only reason it works now is that
> there is a low-priority "fallback" search over all static blocks.
> That is just more trouble waiting to happen.

Trouble doesn't generally happen, though, because of the ODR.

> We've got a vtbl pointer, and we want type information for it.
> So we translate:
>   vtbl address -> minsym
>   minsym -> mangled name
>   mangled name -> demangled name
>   demangled name -> prefix
>   prefix -> symbol
>   symbol -> type
> Maybe we should just go from the vtbl address to the symbol without
> converting to a name and back again?!

We don't have any information to do that, unless you know something I

> > Now that we've had another major release of GDB I am extremely tempted
> > to rip out aCC C++ support.  If you really want to experiment, the HP
> > TestDrive systems do have aCC installed; www.testdrive.hp.com and
> > spe191.testdrive.hp.com:telnet.  But they're a real nuisance to run
> > tests on due to the lack of usable (to me) tools, and the restrictive
> > firewall.
> That's in my area.  "Get into testdrive" is a task for me, and "set up
> migchain/migbat" is another task.  I can handle the lack of tools as
> long as there is lots of disk space, because I bootstrap the whole
> toolchain.  I'll have to see how restrictive the firewall is.

You may have to start bootstrap a little further back than usual. 
You'll need at least GNU Make... HP-UX's make is incredibly annoying.

> > And if we found problems, there wouldn't be anyone motivated
> > to fix them.
> Well, it would be useful to get enough hpux running to clean up
> all the hp/acc special code in the test suite.  It would be great
> if acc is completely getting replaced, too.
> > The "earlier version" used VAR_DOMAIN, FYI.  It was presumably based on
> > the code in gnu-v2-abi.c, but because gnu-v2-abi.c didn't show the
> > problem I encountered at the time I didn't update it.
> Aha, the history is falling into place.
> In retrospect, my new lookup_rtti_type should take the domain as a parameter.

I don't really think so.  You're always (?) looking for aggregate types
STRUCT_DOMAIN is the most useful place to find them.

Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer

More information about the Gdb-patches mailing list