felipepiovezan wrote: > @felipepiovezan I have another question. For the same example. I see: > > ``` > Name 4 { > Hash: 0x2F94396D > String: 0x00000049 "_Z9get_statev" > Entry @ 0x112 { > Abbrev: 0x2 > Tag: DW_TAG_subprogram > DW_IDX_die_offset: 0x00000023 > DW_IDX_parent: <parent not indexed> > } > ... > Name 8 { > Hash: 0x2B607 > String: 0x00000041 "B" > Entry @ 0x13b { > Abbrev: 0x7 > Tag: DW_TAG_namespace > DW_IDX_type_unit: 0x00 > DW_IDX_die_offset: 0x00000025 > DW_IDX_parent: Entry @ 0x112 > } > ``` > > This seems like a bug no? Looks like it's confusing > > ``` > 0x00000023: DW_TAG_namespace > DW_AT_name ("A") > ``` > > In TU 0 With Subprogram at the same (relative offset) in the CU > > ``` > 0x0000006a: Compile Unit: length = 0x0000005c, format = DWARF32, version = > 0x0005, unit_type = DW_UT_compile, abbr_offset = 0x0000, addr_size = 0x08 > (next unit at 0x000000ca) > ... > 0x0000008d: DW_TAG_subprogram > ``` > > I think it should be pointing to: > > ``` > String: 0x00000023 "A" > Entry @ 0x11e { > Abbrev: 0x4 > Tag: DW_TAG_namespace > DW_IDX_type_unit: 0x00 > DW_IDX_die_offset: 0x00000023 > DW_IDX_parent: <parent not indexed> > } > ```
You are right. The fact that they have the same relative offset tells me that some part of the code is failing to account for TUs. I just checked the printing code in the hope that it was a mistake while dumping, but it doesn't seem to be... https://github.com/llvm/llvm-project/pull/91808 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits