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]

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


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++;
        }

That is we can't handle a DIE with both sibling and children. How
should we fix that?


H.J.


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