PR28459, readelf issues bogus warning
Alan Modra
amodra@gmail.com
Sun Oct 17 10:57:51 GMT 2021
I'd missed the fact that the .debug_rnglists dump doesn't exactly
display the contents of the section. Instead readelf rummages through
.debug_info looking for DW_AT_ranges entries, then displays the
entries in .debug_rnglists pointed at, sorted. A simpler dump of the
actual section contents might be more useful and robust, but it was
likely done that way to detect overlap and holes.
Anyway, the headers in .debug_rnglists besides the first are ignored,
and limiting to the unit length of the first header fails if there is
more than one unit.
PR 28459
* dwarf.c (display_debug_ranges): Don't constrain data to length
in header.
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index 6e10281a6ed..d42dc64b397 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -7730,7 +7730,6 @@ display_debug_ranges (struct dwarf_section *section,
return 0;
}
}
- finish = start + initial_length;
/* Get and check the version number. */
SAFE_BYTE_GET_AND_INC (version, start, 2, finish);
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list