[rfa/c++] cp_lookup_rtti_type, take 2
Fri Dec 5 17:38:00 GMT 2003
On Fri, 5 Dec 2003 12:16:58 -0500, Daniel Jacobowitz <firstname.lastname@example.org> said:
> How do you suggest we do it? Some new addition to the debug info? I
> don't believe we have anything at the moment that fills this need.
Hmm. I thought I'd seen something appropriate in the debug info, but
now I realize that I was looking for the slot for the vtable in the
class, which is a quite different matter.
Well, here's what I see when looking for a vtable symbol in a sample
.uleb128 0x1d # (DIE (0x20d) DW_TAG_variable)
.long .LC9 # DW_AT_name: "_ZTI1C"
.long 0x21e # DW_AT_type
.byte 0x1 # DW_AT_external
.byte 0x1 # DW_AT_artificial
.byte 0x5 # DW_AT_location
.byte 0x3 # DW_OP_addr
So DW_TAG_variable + DW_AT_artificial is a start - looking for that
(plus perhaps guiltily peeking at the demanged name just to make sure
it starts with 'typeinfo') lets us find the vtable symbols. But that
doesn't help - the DW_AT_type doesn't actually lead us to the type
that it's the vtable for, and certainly none of the other attributes
are going to help.
More information about the Gdb-patches