---
name: "dwarf_die_link"
section: "3"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["freebsd"]
url: "https://new.carta.tech/dwarf_die_link"
---

# dwarf\_die\_link(3)

link a debugging information entry

## NAME

**dwarf\_die\_link** – link a debugging information entry

## LIBRARY

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/3.md), [dwarf\_add\_die\_to\_debug(3)](/dwarf_add_die_to_debug/3.md), [dwarf\_new\_die(3)](/dwarf_new_die/3.md)
