This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gdb can't handle a DIE with both sibling and children


On Thu, 31 Jul 2003 11:13:55 -0700, "H. J. Lu" <hjl@lucon.org> said:

> It is entirely possible for a DIE with both sibling and children. But
> scan_partial_symbols () has

>       /* If the die has a sibling, skip to the sibling.  Do not skip
>          enumeration types, we want to record their enumerators.  Do
>          not skip namespaces, we want to record symbols inside
>          them.  */
>       if (pdi.sibling
>           && pdi.tag != DW_TAG_enumeration_type
>           && pdi.tag != DW_TAG_namespace)
>         {
>           info_ptr = pdi.sibling;
>         }
>       else if (pdi.has_children)
>         {
>           /* Die has children, but either the optional DW_AT_sibling
>              attribute is missing or we want to look at them.  */
>           nesting_level++;
>         }

The partial symbol table normally only contains info about top-level
symbols; so scan_partial_symbols rarely wants to look at children at
all.  The full symbol table contains info about everything, though.

Is this causing you a problem in some specific situation?

David Carlton
carlton@kealia.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]