PR debug/38757 continued. Handle C11, C++11 and C++14.
authorMark Wielaard <mjw@redhat.com>
Wed, 26 Nov 2014 11:05:20 +0000 (11:05 +0000)
committerMark Wielaard <mark@gcc.gnu.org>
Wed, 26 Nov 2014 11:05:20 +0000 (11:05 +0000)
commit5d45c9c04e7667f9d567d0d67cfd7d2d7cc00696
tree946dce63764472eaf25cff837a0273a79deafc59
parentb8a8c4723c3fe55e696787cd7a961bc2085eb762
PR debug/38757 continued. Handle C11, C++11 and C++14.

Add experimental (minimal) DWARFv5 support.

This change depends on the new DWARFv5 constants mentioned in the
following draft: http://dwarfstd.org/doc/dwarf5.20141029.pdf

gcc/ChangeLog

* doc/invoke.texi (-gdwarf-@{version}): Mention experimental DWARFv5.
* opts.c (common_handle_option): Accept -gdwarf-5.
* dwarf2out.c (is_cxx): Add DW_LANG_C_plus_plus_11 and
DW_LANG_C_plus_plus_14.
(lower_bound_default): Likewise. Plus DW_LANG_C11.
(gen_compile_unit_die): Output DW_LANG_C_plus_plus_11,
DW_LANG_C_plus_plus_14 or DW_LANG_C11.
(output_compilation_unit_header): Output at most a DWARFv4 header.
(output_skeleton_debug_sections): Likewise.
(output_line_info): Likewise.
(output_aranges): Document header version number.

gcc/testsuite/ChangeLog

* gcc.dg/debug/dwarf2/lang-c11.c: New test.
* gcc.dg/debug/dwarf2/lang-c11-d4-strict.c: Likewise.
* g++.dg/debug/dwarf2/lang-cpp11.C: Likewise.
* g++.dg/debug/dwarf2/lang-cpp14.C: Likewise.
* g++.dg/debug/dwarf2/lang-cpp98.C: Likewise.

include/ChangeLog

* dwarf2.h: Add DW_LANG_C_plus_plus_11, DW_LANG_C11 and
DW_LANG_C_plus_plus_14.

From-SVN: r218077
12 files changed:
gcc/ChangeLog
gcc/doc/invoke.texi
gcc/dwarf2out.c
gcc/opts.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/debug/dwarf2/lang-cpp11.C [new file with mode: 0644]
gcc/testsuite/g++.dg/debug/dwarf2/lang-cpp14.C [new file with mode: 0644]
gcc/testsuite/g++.dg/debug/dwarf2/lang-cpp98.C [new file with mode: 0644]
gcc/testsuite/gcc.dg/debug/dwarf2/lang-c11-d4-strict.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/debug/dwarf2/lang-c11.c [new file with mode: 0644]
include/ChangeLog
include/dwarf2.h