DWARF_ADD_AT_FLAG(3)

πŸ“¦ version 15.1, in freebsd 14.5, freebsd 15.1, nixpkgs unstable

πŸ’– DWARF_ADD_AT_FLAG(3) πŸ’–

okay bestie, welcome to libdwarf, aka the DWARF Access Library (that's libdwarf, linked with -ldwarf) 🧚 and today's main character is dwarf_add_AT_flag() β€” she creates a flag attribute and attaches it to a debugging information entry. periodt. πŸ’…


✨ NAME ✨

dwarf_add_AT_flag β€” create and attach a flag attribute πŸŽ€

πŸ¦‹ LIBRARY πŸ¦‹

DWARF Access Library (libdwarf, -ldwarf) πŸ’œ

🌸 SYNOPSIS 🌸

#include <libdwarf.h>

Dwarf_P_Attribute
dwarf_add_AT_flag(Dwarf_P_Debug dbg, Dwarf_P_Die die, Dwarf_Half attr,
    Dwarf_Small flag, Dwarf_Error *err);

πŸ’« DESCRIPTION πŸ’«

so dwarf_add_AT_flag() literally creates an attribute descriptor that belongs to the β€˜flag’ class, and attaches it to the debugging information entry referenced by argument die. the created attribute descriptor will have DWARF form DW_FORM_flag. no cap. πŸ”₯

  • argument dbg should reference a DWARF producer instance allocated using dwarf_producer_init(3) or dwarf_producer_init_b(3) 🫢
  • argument die should reference a debugging information entry allocated using dwarf_new_die(3) ✨
  • argument attr should specify the attribute code for the new attribute descriptor πŸ‘‘
  • argument flag should specify the value of the new attribute descriptor. a zero value is treated as β€˜false’ and a non-zero value as β€˜true’. iykyk 😌
  • 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_add_AT_flag() returns the created attribute descriptor. slay. πŸ’… in case of an error, function dwarf_add_AT_flag() returns DW_DLV_BADADDR and sets the argument err. 😭

🌈 ERRORS 🌈

function dwarf_add_AT_flag() can fail with:

  • [DW_DLE_ARGUMENT] β€” either of the arguments dbg or die was NULL. πŸ™ˆ
  • [DW_DLE_MEMORY] β€” an out of memory condition was encountered during the execution of the function. πŸ’€

πŸŽ€ SEE ALSO πŸŽ€

dwarf(3), dwarf_add_AT_signed_const(3), dwarf_add_AT_unsigned_const(3), dwarf_new_die(3), dwarf_producer_init(3), dwarf_producer_init_b(3) πŸ¦‹


and that's the whole vibe, bestie β€” this page is from Debian, dated September 4, 2011, so go forth and attach those flag attributes with main character energy πŸ’–βœ¨

πŸ“¦ where this page comes from