DWARF_ADD_AT_CONST_VALUE_STRING(3) | Library Functions Manual | DWARF_ADD_AT_CONST_VALUE_STRING(3)

# NAME

dwarf_add_AT_const_value_signedint, dwarf_add_AT_const_value_string, dwarf_add_AT_const_value_unsignedint — create and attach a DW_AT_const_value attribute

# LIBRARY

DWARF Access Library (libdwarf, -ldwarf)

# SYNOPSIS

#include <libdwarf.h>
Dwarf_P_Attribute
dwarf_add_AT_const_value_signedint(Dwarf_P_Die die, Dwarf_Signed value, Dwarf_Error *err);
Dwarf_P_Attribute
dwarf_add_AT_const_value_string(Dwarf_P_Die die, char *str, Dwarf_Error *err);
Dwarf_P_Attribute
dwarf_add_AT_const_value_unsignedint(Dwarf_P_Die die, Dwarf_Unsigned value, Dwarf_Error *err);

# DESCRIPTION

These functions create a `DW_AT_const_value` attribute descriptor and attach it to the debugging information entry referenced by argument die.
Argument die should reference a debugging information entry allocated using dwarf_new_die(3).
Function dwarf_add_AT_const_value_signedint() creates a `DW_AT_const_value` attribute descriptor containing the signed value specified by argument value. The created attribute descriptor will have DWARF form `DW_FORM_sdata`.
Function dwarf_add_AT_const_value_unsignedint() creates a `DW_AT_const_value` attribute descriptor containing the unsigned value specified by argument value. The created attribute descriptor will have DWARF form `DW_FORM_udata`.
Function dwarf_add_AT_const_value_string() creates a `DW_AT_const_value` attribute descriptor containing the string pointed to by the NUL-terminated argument str. The created attribute descriptor will have DWARF form `DW_FORM_strp`.
If argument err is not NULL, it will be used by these functions to store error information in case of an error.

# RETURN VALUES

On success, these functions return the created attribute descriptor. In case of an error, these functions return `DW_DLV_BADADDR` and set the argument err.

# ERRORS

These functions can fail with:

[`DW_DLE_ARGUMENT`]
  Either of the arguments die or str was NULL.
[`DW_DLE_MEMORY`]
  An out of memory condition was encountered during execution.

# SEE ALSO

dwarf(3), dwarf_add_AT_name(3), dwarf_add_AT_signed_const(3), dwarf_add_AT_string(3), dwarf_add_AT_unsigned_const(3), dwarf_new_die(3)

September 4, 2011 | NetBSD 8.2