]> git.ipfire.org Git - thirdparty/elfutils.git/commitdiff
dwarf.h: Remove non-existing DW_TAG_mutable_type.
authorMark Wielaard <mjw@redhat.com>
Wed, 18 Jun 2014 08:57:58 +0000 (10:57 +0200)
committerMark Wielaard <mjw@redhat.com>
Sun, 22 Jun 2014 17:29:13 +0000 (19:29 +0200)
The DW_TAG_mutable_type was only mentioned in an early draft of DWARFv3.
But was removed because there are no C++ mutable qualified types. It was
replaced by a new attribute DW_AT_mutable on DW_TAG_member DIEs. The new
attribute is available in dwarf.h.
http://dwarfstd.org/ShowIssue.php?issue=050223.1

DW_TAG_mutable_type was only used internally in some backends (which
just ignored it anyway).  dwarves did use it to turn it into a string
value, libabigail used it and ignored it (patches to remove sent).
GCC, GDB and binutils don't use nor define it.

Signed-off-by: Mark Wielaard <mjw@redhat.com>
backends/ChangeLog
backends/libebl_CPU.h
libdw/ChangeLog
libdw/dwarf.h

index c846a958dfeca6bc3116f18f7683ea8f019e9f55..a2df83b8ce33a668db0975fbf2747170a13a3383 100644 (file)
@@ -1,3 +1,8 @@
+2014-06-18  Mark Wielaard  <mjw@redhat.com>
+
+       * libebl_CPU.h (dwarf_peel_type): Remove DW_TAG_mutable_type
+       handling.
+
 2014-06-17  Mark Wielaard  <mjw@redhat.com>
 
        * arm_init.c (arm_init): Set func_addr_mask.
index 3ad925886cae1e4514d1cb02d8d517af5af5c725..fa0d4f2d8690bca3b5915076283509759c5c5a26 100644 (file)
@@ -1,5 +1,5 @@
 /* Common interface for libebl modules.
-   Copyright (C) 2000, 2001, 2002, 2003, 2005, 2013 Red Hat, Inc.
+   Copyright (C) 2000, 2001, 2002, 2003, 2005, 2013, 2014 Red Hat, Inc.
    This file is part of elfutils.
 
    This file is free software; you can redistribute it and/or modify
@@ -60,7 +60,7 @@ dwarf_peel_type (Dwarf_Die *typediep, Dwarf_Attribute *attrp)
   int tag = DWARF_TAG_OR_RETURN (typediep);
   while (tag == DW_TAG_typedef
         || tag == DW_TAG_const_type || tag == DW_TAG_volatile_type
-        || tag == DW_TAG_restrict_type || tag == DW_TAG_mutable_type)
+        || tag == DW_TAG_restrict_type)
     {
       attrp = dwarf_attr_integrate (typediep, DW_AT_type, attrp);
       typediep = dwarf_formref_die (attrp, typediep);
index 780b34d0f832ad8cf78ff3e478f73ef690869f9d..288441970336aed06352771f458f7159e38806e1 100644 (file)
@@ -1,3 +1,7 @@
+2014-06-18  Mark Wielaard  <mjw@redhat.com>
+
+       * dwarf.h: Remove DW_TAG_mutable_type.
+
 2014-05-02  Mark Wielaard  <mjw@redhat.com>
 
        * libdwP.h (__check_build_id): Removed now unused.
index 41cae5bcc831809fe74e9d6e3a65e0ad68465ada..d98a4bdc908a2ff7ab4d041c72fd4b89057c5ced 100644 (file)
@@ -1,5 +1,5 @@
 /* This file defines standard DWARF types, structures, and macros.
-   Copyright (C) 2000-2011 Red Hat, Inc.
+   Copyright (C) 2000-2011, 2014 Red Hat, Inc.
    This file is part of elfutils.
 
    This file is free software; you can redistribute it and/or modify
@@ -87,7 +87,7 @@ enum
     DW_TAG_unspecified_type = 0x3b,
     DW_TAG_partial_unit = 0x3c,
     DW_TAG_imported_unit = 0x3d,
-    DW_TAG_mutable_type = 0x3e,
+    /* 0x3e reserved.  */
     DW_TAG_condition = 0x3f,
     DW_TAG_shared_type = 0x40,
     DW_TAG_type_unit = 0x41,