Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.

DWARF_SRCFILES(3)          Library Functions Manual          DWARF_SRCFILES(3)

     dwarf_srcfiles - retrieve source file information

     DWARF Access Library (libdwarf, -ldwarf)

     #include <libdwarf.h>

     dwarf_srcfiles(Dwarf_Die die, char ***filenames,
         Dwarf_Signed *filenamecount, Dwarf_Error *err);

     Function dwarf_srcfiles() returns the source file names associated with a
     compilation unit.  Source file names are returned as an array of NUL-
     terminated strings.

     Argument die should reference a DWARF debugging information entry
     descriptor with source file information, see dwarf(3).  Argument
     filenames should point to a location that will hold a pointer to the
     returned array of file names.  Argument filenamecount should point to a
     location that will hold the number of file names returned.  If argument
     err is not NULL, it will be used to store error information in case of an

   Memory Management
     The memory areas used for the file names and for array of pointers being
     returned are managed by the DWARF(3) library.  The application should not
     attempt to directly free these memory areas.  Portable code should
     indicate that the memory areas are to be freed by using dwarf_dealloc(3).

     Function dwarf_srcfiles() returns DW_DLV_OK when it succeeds.  In case of
     an error, it returns DW_DLV_ERROR and sets the argument err.

     Function dwarf_srcfiles() can fail with:

     [DW_DLE_ARGUMENT]       One of the arguments die, filenames or
                             filenamecount was NULL.

     [DW_DLE_NO_ENTRY]       The compilation unit referenced by argument die
                             does not have associated source file information.

     [DW_DLE_MEMORY]         An out of memory condition was encountered during
                             the execution of this function.

     dwarf(3), dwarf_dealloc(3), dwarf_srclines(3)

NetBSD 10.99                    April 28, 2010                    NetBSD 10.99