Recognize new DWARF5/GCC5 DW_LANG constants for Fortran 03 and Fortran 08.
authorMark Wielaard <mjw@redhat.com>
Mon, 9 Feb 2015 22:36:54 +0000 (23:36 +0100)
committerMark Wielaard <mjw@redhat.com>
Tue, 10 Feb 2015 08:07:25 +0000 (09:07 +0100)
DWARFv5 defines and GCC5 may output two new DW_LANG constants for the
Fortran 2003 and Fortran 2008 standards. Handle and display both in
binutils.

binutils/ChangeLog:

* dwarf.c (read_and_display_attr_value): Handle DW_LANG_Fortran03
and DW_LANG_Fortran08.

include/ChangeLog:

* dwarf2.h: Add DW_LANG_Fortran03 and DW_LANG_Fortran08.

http://dwarfstd.org/ShowIssue.php?issue=141121.1

binutils/ChangeLog
binutils/dwarf.c
include/ChangeLog
include/dwarf2.h

index 803bfa8..01c4634 100644 (file)
@@ -1,3 +1,8 @@
+2015-02-09  Mark Wielaard  <mjw@redhat.com>
+
+       * dwarf.c (read_and_display_attr_value): Handle DW_LANG_Fortran03
+       and DW_LANG_Fortran08.
+
 2015-02-06  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17512
index cebd8c9..e93a757 100644 (file)
@@ -1951,6 +1951,8 @@ read_and_display_attr_value (unsigned long attribute,
        case DW_LANG_C_plus_plus_11:    printf ("(C++11)"); break;
        case DW_LANG_C11:               printf ("(C11)"); break;
        case DW_LANG_C_plus_plus_14:    printf ("(C++14)"); break;
+       case DW_LANG_Fortran03:         printf ("(Fortran 03)"); break;
+       case DW_LANG_Fortran08:         printf ("(Fortran 08)"); break;
          /* MIPS extension.  */
        case DW_LANG_Mips_Assembler:    printf ("(MIPS assembler)"); break;
          /* UPC extension.  */
index 4004997..24a141d 100644 (file)
@@ -1,5 +1,9 @@
 2015-02-09  Mark Wielaard  <mjw@redhat.com>
 
+       * dwarf2.h: Add DW_LANG_Fortran03 and DW_LANG_Fortran08.
+
+2015-02-09  Mark Wielaard  <mjw@redhat.com>
+
        * dwarf2.def: Add DW_TAG_atomic_type.
 
 2015-01-28  James Bowman  <james.bowman@ftdichip.com>
index 791ef56..4ada871 100644 (file)
@@ -310,6 +310,8 @@ enum dwarf_source_language
     DW_LANG_C_plus_plus_11 = 0x001a, /* dwarf5.20141029.pdf DRAFT */
     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.  */