NAME
dwarf_formexprloc —
return information
about a location expression
LIBRARY
DWARF Access Library (libdwarf, -ldwarf)
SYNOPSIS
#include <libdwarf.h>
int
dwarf_formexprloc(
Dwarf_Attribute attr,
Dwarf_Unsigned *retlen,
Dwarf_Ptr
*retexpr,
Dwarf_Error *err);
DESCRIPTION
Function
dwarf_formexprloc() allows an application to retrieve
the length and the bytes of a DWARF location expression.
Argument
attr should reference a DWARF attribute of the
form
DW_FORM_exprloc
. Argument
retlen should point to a location that will be set to
the length of the location expression. Argument
retexpr
should point to a location that will be set to a pointer to the content of the
location expression itself.
If argument
err is not NULL, it will be used to return an
error descriptor in case of an error.
Memory Management
The application should not attempt to free the memory area referenced by the
pointer returned in argument
retexpr.
RETURN VALUES
Function
dwarf_formexprloc() returns
DW_DLV_OK
on success. In case of an error, it returns
DW_DLV_ERROR
and sets argument
err.
ERRORS
Function
dwarf_formexprloc() may fail with the following
errors:
-
-
- [
DW_DLE_ARGUMENT
]
- One of arguments attr,
retlen or retexpr was
NULL.
-
-
- [
DW_DLE_ATTR_FORM_BAD
]
- The attribute referenced by argument
attr was not of form
DW_FORM_exprloc
.
SEE ALSO
dwarf(3),
dwarf_attr(3),
dwarf_formblock(3),
dwarf_formflag(3),
dwarf_formref(3),
dwarf_formsdata(3),
dwarf_formsig8(3),
dwarf_formstring(3),
dwarf_formudata(3),
dwarf_hasattr(3)