[gold] Recognize DWARF5/GCC5 DW_LANG_Fortran03 and DW_LANG_Fortran08.

DWARFv5 defines and GCC5 may output two new DW_LANG constants for the
Fortran 2003 and Fortran 2008 standards. Recognize both in gold gdb-index
as unsupported.

For consistency also add the other new DWARF5/GCC5 language constants in
the elfcpp::DW_LANG enum to match include/dwarf2.h.

elfcpp/ChangeLog:

	* dwarf.h (enum DW_LANG): Add DW_LANG_C_plus_plus_11,
	DW_LANG_C11, DW_LANG_C_plus_plus_14, DW_LANG_Fortran03 and
	DW_LANG_Fortran08 from ../include/dwarf2.h.

gold/ChangeLog:

	* gdb-index.cc (Gdb_index_info_reader::visit_top_die): Recognize
	DW_LANG_Fortran03 and DW_LANG_Fortran08.
This commit is contained in:
Mark Wielaard 2015-02-10 00:02:34 +01:00
parent e9c1bdad26
commit 2d9afefe22
4 changed files with 20 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2015-02-09 Mark Wielaard <mjw@redhat.com>
* dwarf.h (enum DW_LANG): Add DW_LANG_C_plus_plus_11,
DW_LANG_C11, DW_LANG_C_plus_plus_14, DW_LANG_Fortran03 and
DW_LANG_Fortran08 from ../include/dwarf2.h.
2015-01-22 Han Shen <shenhan@google.com>
* arm.h (R_ARM_IRELATIVE): New dynamic relocation.

View File

@ -205,6 +205,12 @@ enum DW_LANG
DW_LANG_Python = 0x0014,
// DWARF 5.
DW_LANG_Go = 0x0016,
DW_LANG_C_plus_plus_11 = 0x001a,
DW_LANG_C11 = 0x001d,
DW_LANG_C_plus_plus_14 = 0x0021,
DW_LANG_Fortran03 = 0x0022,
DW_LANG_Fortran08 = 0x0023,
DW_LANG_lo_user = 0x8000, // Implementation-defined range start.
DW_LANG_hi_user = 0xffff, // Implementation-defined range start.
// MIPS.

View File

@ -1,3 +1,8 @@
2015-02-09 Mark Wielaard <mjw@redhat.com>
* gdb-index.cc (Gdb_index_info_reader::visit_top_die): Recognize
DW_LANG_Fortran03 and DW_LANG_Fortran08.
2015-02-16 Cary Coutant <ccoutant@google.com>
PR gold/13577

View File

@ -371,7 +371,9 @@ Gdb_index_info_reader::visit_top_die(Dwarf_die* die)
|| this->cu_language_ == elfcpp::DW_LANG_Fortran90
|| this->cu_language_ == elfcpp::DW_LANG_Java
|| this->cu_language_ == elfcpp::DW_LANG_Ada95
|| this->cu_language_ == elfcpp::DW_LANG_Fortran95)
|| this->cu_language_ == elfcpp::DW_LANG_Fortran95
|| this->cu_language_ == elfcpp::DW_LANG_Fortran03
|| this->cu_language_ == elfcpp::DW_LANG_Fortran08)
{
gold_warning(_("%s: --gdb-index currently supports "
"only C and C++ languages"),