I would appreciate any donations. Wishlist or send e-mail type donations to maekawa AT daemon-systems.org.
DWARF_FORMREF(3) Library Functions Manual DWARF_FORMREF(3) NAME dwarf_formref, dwarf_global_formref - retrieve offsets for REFERENCE class attributes LIBRARY DWARF Access Library (libdwarf, -ldwarf) SYNOPSIS #include <libdwarf.h> int dwarf_formref(Dwarf_Attribute attr, Dwarf_Off *retoffset, Dwarf_Error *err); int dwarf_global_formref(Dwarf_Attribute attr, Dwarf_Off *retoffset, Dwarf_Error *err); DESCRIPTION These functions return the offsets associated with a DWARF attribute descriptor. Function dwarf_formref() returns the compilation unit relative offset of the descriptor referenced by argument attr in the location pointed to by argument retoffset. Argument attr must be a reference that is local to a compilation unit. Permitted forms for argument attr are DW_FORM_ref1, DW_FORM_ref2, DW_FORM_ref4, DW_FORM_ref8 and DW_FORM_ref_udata. Function dwarf_global_formref() returns the section-relative offset of the descriptor referenced by argument attr in the location pointed to by argument retoffset. Argument attr should be a legal REFERENCE class form. Permitted forms for argument attr are: DW_FORM_ref_addr, DW_FORM_ref_udata, DW_FORM_ref1, DW_FORM_ref2, DW_FORM_ref4, DW_FORM_ref8 and DW_FORM_sec_offset. The returned offset is relative to the start of the ".debug_info" ELF section. If argument err is not NULL, it will be used to return an error descriptor in case of an error. RETURN VALUES These functions return DW_DLV_OK on success. In case of an error, these functions return DW_DLV_ERROR and sets argument err. ERRORS These functions may fail with the following errors: [DW_DLE_ARGUMENT] Either of arguments attr or retoffset was NULL. [DW_DLE_ATTR_FORM_BAD] The attribute referenced by argument attr was not of a permitted kind. SEE ALSO dwarf(3), dwarf_attr(3), dwarf_formblock(3), dwarf_formflag(3), dwarf_formsdata(3), dwarf_formsig8(3), dwarf_formstring(3), dwarf_formudata(3), dwarf_hasattr(3) NetBSD 8.0 June 21, 2010 NetBSD 8.0