On some ancient GCC versions (4.4.7 at least) -Wshadow warns about local variables "shadowing" global function definitions.
readelf.c: In function ‘print_debug_addr_section’: readelf.c:5265: error: declaration of ‘index’ shadows a global declaration /usr/include/string.h:489: error: shadowed declaration is here This is silly of course, but easy to work around. Signed-off-by: Mark Wielaard <m...@klomp.org> --- src/ChangeLog | 6 ++++++ src/readelf.c | 14 +++++++------- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 6d962bb..2b711da 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2018-07-04 Mark Wielaard <m...@klomp.org> + + * readelf.c (print_debug_addr_section): Rename index var to uidx. + (attr_callback): Rename index var to word. + (print_debug_str_offsets_section): Rename index var to uidx. + 2018-06-25 Mark Wielaard <m...@klomp.org> * readelf.c (print_decoded_line_section): Use dwarf_next_lines diff --git a/src/readelf.c b/src/readelf.c index faed61a..22355e9 100644 --- a/src/readelf.c +++ b/src/readelf.c @@ -5262,14 +5262,14 @@ print_debug_addr_section (Dwfl_Module *dwflmod __attribute__ ((unused)), addresses /= 10; } - unsigned int index = 0; + unsigned int uidx = 0; size_t index_offset = readp - (const unsigned char *) data->d_buf; printf (" Addresses start at offset 0x%zx:\n", index_offset); while (readp <= next_unitp - address_size) { Dwarf_Addr addr = read_addr_unaligned_inc (address_size, dbg, readp); - printf (" [%*u] ", digits, index++); + printf (" [%*u] ", digits, uidx++); print_dwarf_addr (dwflmod, address_size, addr, addr); printf ("\n"); } @@ -6967,12 +6967,12 @@ attr_callback (Dwarf_Attribute *attrp, void *arg) } if (form != DW_FORM_addr ) { - Dwarf_Word index; - if (dwarf_formudata (attrp, &index) != 0) + Dwarf_Word word; + if (dwarf_formudata (attrp, &word) != 0) goto attrval_out; printf (" %*s%-20s (%s) [%" PRIx64 "] ", (int) (level * 2), "", dwarf_attr_name (attr), - dwarf_form_name (form), index); + dwarf_form_name (form), word); } else printf (" %*s%-20s (%s) ", @@ -10256,7 +10256,7 @@ print_debug_str_offsets_section (Dwfl_Module *dwflmod __attribute__ ((unused)), offsets /= 10; } - unsigned int index = 0; + unsigned int uidx = 0; size_t index_offset = readp - (const unsigned char *) data->d_buf; printf (" Offsets start at 0x%zx:\n", index_offset); while (readp <= next_unitp - offset_size) @@ -10268,7 +10268,7 @@ print_debug_str_offsets_section (Dwfl_Module *dwflmod __attribute__ ((unused)), offset = read_8ubyte_unaligned_inc (dbg, readp); const char *str = dwarf_getstring (dbg, offset, NULL); printf (" [%*u] [%*" PRIx64 "] \"%s\"\n", - digits, index++, (int) offset_size * 2, offset, str ?: "???"); + digits, uidx++, (int) offset_size * 2, offset, str ?: "???"); } printf ("\n"); -- 1.8.3.1