From 5a19504458d7a4113ef91875a447f4e841df7598 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Mon, 9 Feb 2015 23:36:54 +0100 Subject: [PATCH] Recognize new DWARF5/GCC5 DW_LANG constants for Fortran 03 and Fortran 08. 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 | 5 +++++ binutils/dwarf.c | 2 ++ include/ChangeLog | 4 ++++ include/dwarf2.h | 2 ++ 4 files changed, 13 insertions(+) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 803bfa89b8..01c463441b 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2015-02-09 Mark Wielaard + + * dwarf.c (read_and_display_attr_value): Handle DW_LANG_Fortran03 + and DW_LANG_Fortran08. + 2015-02-06 Nick Clifton PR binutils/17512 diff --git a/binutils/dwarf.c b/binutils/dwarf.c index cebd8c9b76..e93a757287 100644 --- a/binutils/dwarf.c +++ b/binutils/dwarf.c @@ -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. */ diff --git a/include/ChangeLog b/include/ChangeLog index 4004997441..24a141dba5 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2015-02-09 Mark Wielaard + + * dwarf2.h: Add DW_LANG_Fortran03 and DW_LANG_Fortran08. + 2015-02-09 Mark Wielaard * dwarf2.def: Add DW_TAG_atomic_type. diff --git a/include/dwarf2.h b/include/dwarf2.h index 791ef566f9..4ada87162f 100644 --- a/include/dwarf2.h +++ b/include/dwarf2.h @@ -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. */ -- 2.34.1