---
name: "dwarf_formblock"
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_formblock"
---

# dwarf\_formblock(3)

return the value of a BLOCK attribute

## NAME

**dwarf\_formblock** – return the value of a BLOCK attribute

## LIBRARY

library “libdwarf”

## SYNOPSIS

**#include \<libdwarf.h\>**

*int*\

**dwarf\_formblock**(*Dwarf\_Attribute attr*, *Dwarf\_Block \*\*ret*, *Dwarf\_Error \*err*);

## DESCRIPTION

Function **dwarf\_formblock**() sets the location pointed to by argument *ret* to a pointer to a *Dwarf\_Block* structure containing the value of the attribute referenced by argument *attr*. The form of argument *attr* must be one of DW\_FORM\_block, DW\_FORM\_block1, DW\_FORM\_block2 or DW\_FORM\_block4.

If argument *err* is not NULL, it will be used to return an error descriptor in case of an error.

### Memory Management

The memory area referenced by the returned pointer is managed by the DWARF(3) library. The application should not attempt to free this memory area. Portable code may indicate that the memory area is to be freed by using [dwarf\_dealloc(3)](/dwarf_dealloc/3.md).

## RETURN VALUES

Function **dwarf\_formblock**() returns DW\_DLV\_OK on success. In case of an error, it returns DW\_DLV\_ERROR and sets argument *err*.

## ERRORS

Function **dwarf\_formblock**() may fail with the following errors:

- \[DW\_DLE\_ARGUMENT\]

  Either of arguments *attr* or *ret* was NULL.

- \[DW\_DLE\_ATTR\_FORM\_BAD\]

  The attribute referenced by argument *attr* was not of a permitted kind.

## SEE ALSO

[dwarf(3)](/dwarf/3.md), [dwarf\_attr(3)](/dwarf_attr/3.md), [dwarf\_formflag(3)](/dwarf_formflag/3.md), [dwarf\_formref(3)](/dwarf_formref/3.md), [dwarf\_formsdata(3)](/dwarf_formsdata/3.md), [dwarf\_formsig8(3)](/dwarf_formsig8/3.md), [dwarf\_formstring(3)](/dwarf_formstring/3.md), [dwarf\_formudata(3)](/dwarf_formudata/3.md), [dwarf\_hasattr(3)](/dwarf_hasattr/3.md)
