GCC5 adds support for the new Fortran 2003 and 2008 standard DWARF5 language codes. Add them to dwarf.h and handle them in dwarf_aggregate_size.
http://dwarfstd.org/ShowIssue.php?issue=141121.1 Also documented at https://fedorahosted.org/elfutils/wiki/DwarfExtensions Signed-off-by: Mark Wielaard <[email protected]> --- libdw/ChangeLog | 6 ++++++ libdw/dwarf.h | 2 ++ libdw/dwarf_aggregate_size.c | 2 ++ 3 files changed, 10 insertions(+) diff --git a/libdw/ChangeLog b/libdw/ChangeLog index 3432557..813eab4 100644 --- a/libdw/ChangeLog +++ b/libdw/ChangeLog @@ -1,5 +1,11 @@ 2015-02-09 Mark Wielaard <[email protected]> + * dwarf.h: Add DW_LANG_Fortran03 and DW_LANG_Fortran08. + * dwarf_aggregate_size.c (array_size): Recognize array lower bound + for new Fortran language codes is 1. + +2015-02-09 Mark Wielaard <[email protected]> + * dwarf.h: Add DW_TAG_atomic_type. * libdw.h (dwarf_peel_type): Document DW_TAG_atomic_type. * dwarf_peel_type.c (dwarf_peel_type): Handle DW_TAG_atomic_type. diff --git a/libdw/dwarf.h b/libdw/dwarf.h index a97a2c3..5b88c8f 100644 --- a/libdw/dwarf.h +++ b/libdw/dwarf.h @@ -592,6 +592,8 @@ enum DW_LANG_C_plus_plus_11 = 0x001a, /* ISO C++:2011 */ DW_LANG_C11 = 0x001d, /* ISO C:2011 */ DW_LANG_C_plus_plus_14 = 0x0021, /* ISO C++:2014 */ + DW_LANG_Fortran03 = 0x0022, /* ISO/IEC 1539-1:2004 */ + DW_LANG_Fortran08 = 0x0023, /* ISO/IEC 1539-1:2010 */ DW_LANG_lo_user = 0x8000, diff --git a/libdw/dwarf_aggregate_size.c b/libdw/dwarf_aggregate_size.c index 667c274..0247847 100644 --- a/libdw/dwarf_aggregate_size.c +++ b/libdw/dwarf_aggregate_size.c @@ -123,6 +123,8 @@ array_size (Dwarf_Die *die, Dwarf_Word *size, case DW_LANG_Fortran77: case DW_LANG_Fortran90: case DW_LANG_Fortran95: + case DW_LANG_Fortran03: + case DW_LANG_Fortran08: case DW_LANG_Pascal83: case DW_LANG_Modula2: case DW_LANG_PL1: -- 1.8.3.1
