summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2018-04-05 10:52:29 -0600
committerTom Tromey <tom@tromey.com>2018-04-06 10:58:34 -0600
commit2008a0dbe3de7206a14b53a5778af73cbabfb57e (patch)
tree00fa25a75ea3d98e5fd7a85346ea4ab15e78e524
parenta6fd92b0578c5d2172799d7f38ddbda1bd87ea03 (diff)
downloadbinutils-gdb-2008a0dbe3de7206a14b53a5778af73cbabfb57e.tar.gz
Display all DWARF 5 language names
I happened to notice that objdump was not printing "Rust" when showing the DW_AT_language for a CU: <10> DW_AT_language : 28 (Unknown: 1c) This patch adds all the new language constants from DWARF 5 to binutils/dwarf.c. 2018-04-06 Tom Tromey <tom@tromey.com> * dwarf.c (read_and_display_attr_value): Add missing DW_LANG constants from DWARF 5.
-rw-r--r--binutils/ChangeLog5
-rw-r--r--binutils/dwarf.c10
2 files changed, 15 insertions, 0 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 0d8bbc04902..a6b8c95d9fa 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,8 @@
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * dwarf.c (read_and_display_attr_value): Add missing DW_LANG
+ constants from DWARF 5.
+
2018-04-05 H.J. Lu <hongjiu.lu@intel.com>
PR gas/22318
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index 17896e61107..10b4e284ce3 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -2352,12 +2352,22 @@ read_and_display_attr_value (unsigned long attribute,
/* DWARF 4 values. */
case DW_LANG_Python: printf ("(Python)"); break;
/* DWARF 5 values. */
+ case DW_LANG_OpenCL: printf ("(OpenCL)"); break;
case DW_LANG_Go: printf ("(Go)"); break;
+ case DW_LANG_Modula3: printf ("(Modula 3)"); break;
+ case DW_LANG_Haskell: printf ("(Haskell)"); break;
+ case DW_LANG_C_plus_plus_03: printf ("(C++03)"); break;
case DW_LANG_C_plus_plus_11: printf ("(C++11)"); break;
+ case DW_LANG_OCaml: printf ("(OCaml)"); break;
+ case DW_LANG_Rust: printf ("(Rust)"); break;
case DW_LANG_C11: printf ("(C11)"); break;
+ case DW_LANG_Swift: printf ("(Swift)"); break;
+ case DW_LANG_Julia: printf ("(Julia)"); break;
+ case DW_LANG_Dylan: printf ("(Dylan)"); 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;
+ case DW_LANG_RenderScript: printf ("(RenderScript)"); break;
/* MIPS extension. */
case DW_LANG_Mips_Assembler: printf ("(MIPS assembler)"); break;
/* UPC extension. */