This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] [gold] Recognize DWARF5/GCC5 DW_LANG_Fortran03 and DW_LANG_Fortran08.
- From: Mark Wielaard <mark at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 17 Feb 2015 07:11:13 -0000
- Subject: [binutils-gdb] [gold] Recognize DWARF5/GCC5 DW_LANG_Fortran03 and DW_LANG_Fortran08.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=2d9afefe223de983d6e86b5de9da0e5650057ac9
commit 2d9afefe223de983d6e86b5de9da0e5650057ac9
Author: Mark Wielaard <mjw@redhat.com>
Date: Tue Feb 10 00:02:34 2015 +0100
[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.
Diff:
---
elfcpp/ChangeLog | 6 ++++++
elfcpp/dwarf.h | 6 ++++++
gold/ChangeLog | 5 +++++
gold/gdb-index.cc | 4 +++-
4 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/elfcpp/ChangeLog b/elfcpp/ChangeLog
index 47e6328..f298d80 100644
--- a/elfcpp/ChangeLog
+++ b/elfcpp/ChangeLog
@@ -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.
diff --git a/elfcpp/dwarf.h b/elfcpp/dwarf.h
index ccd967e..b0f33c6 100644
--- a/elfcpp/dwarf.h
+++ b/elfcpp/dwarf.h
@@ -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.
diff --git a/gold/ChangeLog b/gold/ChangeLog
index 3eed17a..f83c652 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -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
diff --git a/gold/gdb-index.cc b/gold/gdb-index.cc
index 1a41820..666ee70 100644
--- a/gold/gdb-index.cc
+++ b/gold/gdb-index.cc
@@ -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"),