This is the mail archive of the elfutils-devel@sourceware.org mailing list for the elfutils 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]

dwarf::VS:unit_reference


I nixed unit_reference.  It has no place in the high-level "logical view".
The one and only place it appears is in the DW_AT_import attribute of a
DW_TAG_imported_unit, which is never seen by the logical view.

dwarflint should have special case checks for DW_TAG_imported_unit in its
low/mid-level checks.  (It could use C++ with raw_*, or just do it in the
low-level parts.)  Those checks are:

DW_TAG_imported_unit must have DW_AT_import and no other attrs
Its DW_AT_import must use ref_addr to point to a CU.
That must be a real top-level compile_unit or partial_unit DIE,
and must not be the same CU containing that DW_TAG_imported_unit.

For extra credit, complain about circular chains of CU1->CU2 pointers in
some DW_TAG_imported_unit somewhere in CU1's tree.  But that is not really
worth the effort, it's pathological and would blow up by itself.


Thanks,
Roland

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