diff options
author | mark <mark@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-26 10:10:27 +0000 |
---|---|---|
committer | mark <mark@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-26 10:10:27 +0000 |
commit | aa643a01560ad7b603ec0c5f6e0f715271ef9822 (patch) | |
tree | 0da2d62552111f8cf417b00f86b89e8a9353c9cb /include/ChangeLog | |
parent | 6968257f9e3c408dcb7f91ece080f8a654ba5275 (diff) | |
download | gcc-aa643a01560ad7b603ec0c5f6e0f715271ef9822.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218075 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'include/ChangeLog')
-rw-r--r-- | include/ChangeLog | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index ea7fba60ae1..e73a9a89df6 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2014-11-25 Mark Wielaard <mjw@redhat.com> + + * dwarf2.def (DW_AT_noreturn): New DWARF5 attribute. + 2014-11-14 Shinichiro Hamaji <shinichiro.hamaji@gmail.com> * dwarf2.def (DW_AT_APPLE_optimized, DW_AT_APPLE_flags) |