From 42bc3520017ef04b19bee9a6ae4fc35d55cd2537 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Wed, 26 Nov 2014 10:10:27 +0000 Subject: DWARF add DW_AT_noreturn on noreturn function subprogram. This implements the DWARFv5 noreturn proposal: http://dwarfstd.org/ShowIssue.php?issue=140331.1 TREE_THIS_VOLATILE on a FUNCTION_DECL node means the function does not return normally. This catches the traditional noreturn GNU attribute, the C11 _Noreturn keyword and the C++11 [[noreturn]] attribute. This relies on the DW_AT_noreturn constant defined in the DWARFv5 DRAFT: http://www.dwarfstd.org/doc/dwarf5.20141029.pdf gcc/ChangeLog * dwarf2out.c (gen_subprogram_die): Add DW_AT_noreturn when the function decl has TREE_THIS_VOLATILE. gcc/testsuite/ChangeLog * g++.dg/debug/dwarf2/noreturn-function.C: New test. * gcc.dg/debug/dwarf2/noreturn-function-attribute.c: Likewise. * gcc.dg/debug/dwarf2/noreturn-function-keyword.c: Likewise. include/ChangeLog * dwarf2.def (DW_AT_noreturn): New DWARF5 attribute. From-SVN: r218075 --- include/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'include/ChangeLog') diff --git a/include/ChangeLog b/include/ChangeLog index ea7fba6..e73a9a8 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2014-11-25 Mark Wielaard + + * dwarf2.def (DW_AT_noreturn): New DWARF5 attribute. + 2014-11-14 Shinichiro Hamaji * dwarf2.def (DW_AT_APPLE_optimized, DW_AT_APPLE_flags) -- cgit v1.1