This is the mail archive of the
elfutils-devel@sourceware.org
mailing list for the elfutils project.
[PATCH] Dig further in dwarf_hasattr_integrate
- From: Josh Stone <jistone at redhat dot com>
- To: elfutils-devel at lists dot fedorahosted dot org
- Date: Fri, 21 Aug 2009 18:04:44 -0700
- Subject: [PATCH] Dig further in dwarf_hasattr_integrate
The function dwarf_hasattr_integrate currently only dereferences
DW_AT_abstract_origin. Its twin dwarf_attr_integrate will also check
DW_AT_specification, so this patch makes hasattr follow suit.
Signed-off-by: Josh Stone <jistone@redhat.com>
---
libdw/ChangeLog | 4 ++++
libdw/dwarf_hasattr_integrate.c | 2 ++
2 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/libdw/ChangeLog b/libdw/ChangeLog
index c2f66cb..82a7a4a 100644
--- a/libdw/ChangeLog
+++ b/libdw/ChangeLog
@@ -1,3 +1,7 @@
+2009-08-21 Josh Stone <jistone@redhat.com>
+
+ * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too.
+
2009-08-10 Roland McGrath <roland@redhat.com>
* dwarf_getscopevar.c: Use dwarf_diename.
diff --git a/libdw/dwarf_hasattr_integrate.c b/libdw/dwarf_hasattr_integrate.c
index 12b4863..806742d 100644
--- a/libdw/dwarf_hasattr_integrate.c
+++ b/libdw/dwarf_hasattr_integrate.c
@@ -68,6 +68,8 @@ dwarf_hasattr_integrate (Dwarf_Die *die, unsigned int search_name)
Dwarf_Attribute *attr = INTUSE(dwarf_attr) (die, DW_AT_abstract_origin,
&attr_mem);
if (attr == NULL)
+ attr = INTUSE(dwarf_attr) (die, DW_AT_specification, &attr_mem);
+ if (attr == NULL)
break;
die = INTUSE(dwarf_formref_die) (attr, &die_mem);
--
1.6.2.5