dwarf_start_macro_file —
mark the start of a source file inclusion
DWARF Access Library (libdwarf, -ldwarf)
#include
<libdwarf.h>
int
dwarf_start_macro_file(
Dwarf_P_Debug
dbg,
Dwarf_Unsigned lineno,
Dwarf_Unsigned fileindex,
Dwarf_Error *err);
Function
dwarf_start_macro_file() marks the start
of a new source file inclusion.
Argument
dbg should reference a DWARF producer
instance allocated using
dwarf_producer_init(3)
or
dwarf_producer_init_b(3).
Argument
lineno specifies the line number of
the source line where the source file inclusion occurs. A value of zero is
used to indicate the file for the compilation unit source itself.
Argument
fileindex specifies the index of the
source file that is being included. Valid source file indices are those
returned by
dwarf_add_file_decl(3).
If argument
err is not NULL, it will be used to
store error information in case of an error.
On success, function
dwarf_start_macro_file()
returns
DW_DLV_OK
. In case of an error,
function
dwarf_start_macro_file() returns
DW_DLV_ERROR
and sets the argument
err.
Function
dwarf_start_macro_file() can fail with:
-
-
- [
DW_DLE_ARGUMENT
]
- Argument dbg was
NULL.
-
-
- [
DW_DLE_MEMORY
]
- An out of memory condition was encountered during the
execution of the function.
dwarf(3),
dwarf_add_file_decl(3),
dwarf_def_macro(3),
dwarf_end_macro_file(3),
dwarf_producer_init(3),
dwarf_producer_init_b(3),
dwarf_undef_macro(3),
dwarf_vendor_ext(3)