DW_AT_noreturn is added by GCC5 for functions that don't return to their caller. It is set on a DW_TAG_subprogram for the traditional GNU noreturn attribute, the C11 _Noreturn keyword or C++11 [[noreturn]] attribute. It is a new DWARF5 extension. This is a constant only addition to dwarf.h. No other part of elfutils currently depends on this attribute. Also added to https://fedorahosted.org/elfutils/wiki/DwarfExtensions
Signed-off-by: Mark Wielaard <m...@redhat.com> --- libdw/ChangeLog | 4 ++++ libdw/dwarf.h | 3 +++ 2 files changed, 7 insertions(+) diff --git a/libdw/ChangeLog b/libdw/ChangeLog index 58736a6..7e46e1a 100644 --- a/libdw/ChangeLog +++ b/libdw/ChangeLog @@ -1,3 +1,7 @@ +2014-11-26 Mark Wielaard <m...@redhat.com> + + * dwarf.h (DW_AT_noreturn): Added. + 2014-11-11 Mark Wielaard <m...@redhat.com> * dwarf_getsrclines.c (read_srclines): Do address_size comparison diff --git a/libdw/dwarf.h b/libdw/dwarf.h index d03cf5c..d47260e 100644 --- a/libdw/dwarf.h +++ b/libdw/dwarf.h @@ -221,6 +221,9 @@ enum DW_AT_enum_class = 0x6d, DW_AT_linkage_name = 0x6e, + /* DWARF5 attribute values. */ + DW_AT_noreturn = 0x87, + DW_AT_lo_user = 0x2000, DW_AT_MIPS_fde = 0x2001, -- 1.8.3.1