DWARF_DIE_LINK(3)

NAME
dwarf_die_link - link a debugging information entry

LIBRARY
libdwarf

SYNOPSIS
#include <libdwarf.h>
Dwarf_P_Die
dwarf_die_link(Dwarf_P_Die die, Dwarf_P_Die parent, Dwarf_P_Die child, Dwarf_P_Die left, Dwarf_P_Die right, Dwarf_Error *err);

DESCRIPTION
Function dwarf_die_link() links debugging information entries together.

Argument die should specify the debugging information entry to be updated.

Argument parent specifies the new parent link for the debugging information entry.

Argument child specifies the new first child link for the debugging information entry.

Argument left specifies the new left sibling link for the debugging information entry.

Argument right specifies the new right sibling link for the debugging information entry.

Only one of arguments parent, child, left and right is allowed to be non-NULL. Existing links to parent, child, left or right debugging information entries, if any, will be unlinked before the specified link is established.

If argument err is not NULL, it will be used to store error information in case of an error.

RETURN VALUES
On success, function dwarf_die_link() returns the debugging information entry provided in argument die. In case of an error, function dwarf_die_link() returns DW_DLV_BADADDR and sets the argument err.

ERRORS
The function dwarf_die_link() can fail with:

[DW_DLE_ARGUMENT]
    Argument die was NULL.

[DW_DLE_ARGUMENT]
    More than one of the arguments parent, child, left and right were non-NULL.

SEE ALSO
dwarf(3), dwarf_add_die_to_debug(3), dwarf_new_die(3)