DWARF_DIE_LINK(3) | Library Functions Manual | DWARF_DIE_LINK(3)

# NAME

`dwarf_die_link` —
link a debugging information entry

# LIBRARY

DWARF Access Library (libdwarf, -ldwarf)

# 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)

September 4, 2011 | NetBSD 9.3