mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-18 16:53:50 +08:00
PR26349, FAIL: binutils-all/pr25543 on hpux
The 't' length modifier isn't in SUSv2, unsurprisingly %tx isn't recognized by older printf implementations. So even though 't' is correct for ptrdiff_t we can't use it. Also, _bfd_int64_high and _bfd_int64_low disappeared in 2008. PR 26349 * readelf.c (dump_relocations): Use BFD_VMA_FMT to print offset and info fields. (dump_section_as_strings): Don't use %tx to display offset.
This commit is contained in:
@ -1,3 +1,10 @@
|
||||
2020-08-19 Alan Modra <amodra@gmail.com>
|
||||
|
||||
PR 26349
|
||||
* readelf.c (dump_relocations): Use BFD_VMA_FMT to print offset
|
||||
and info fields.
|
||||
(dump_section_as_strings): Don't use %tx to display offset.
|
||||
|
||||
2020-08-14 Alan Modra <amodra@gmail.com>
|
||||
|
||||
PR 26388
|
||||
|
@ -1281,32 +1281,10 @@ dump_relocations (Filedata * filedata,
|
||||
}
|
||||
else
|
||||
{
|
||||
#if BFD_HOST_64BIT_LONG
|
||||
printf (do_wide
|
||||
? "%16.16lx %16.16lx "
|
||||
: "%12.12lx %12.12lx ",
|
||||
? "%16.16" BFD_VMA_FMT "x %16.16" BFD_VMA_FMT "x "
|
||||
: "%12.12" BFD_VMA_FMT "x %12.12" BFD_VMA_FMT "x ",
|
||||
offset, inf);
|
||||
#elif BFD_HOST_64BIT_LONG_LONG
|
||||
#ifndef __MSVCRT__
|
||||
printf (do_wide
|
||||
? "%16.16llx %16.16llx "
|
||||
: "%12.12llx %12.12llx ",
|
||||
offset, inf);
|
||||
#else
|
||||
printf (do_wide
|
||||
? "%16.16I64x %16.16I64x "
|
||||
: "%12.12I64x %12.12I64x ",
|
||||
offset, inf);
|
||||
#endif
|
||||
#else
|
||||
printf (do_wide
|
||||
? "%8.8lx%8.8lx %8.8lx%8.8lx "
|
||||
: "%4.4lx%8.8lx %4.4lx%8.8lx ",
|
||||
_bfd_int64_high (offset),
|
||||
_bfd_int64_low (offset),
|
||||
_bfd_int64_high (inf),
|
||||
_bfd_int64_low (inf));
|
||||
#endif
|
||||
}
|
||||
|
||||
switch (filedata->file_header.e_machine)
|
||||
@ -13985,13 +13963,7 @@ dump_section_as_strings (Elf_Internal_Shdr * section, Filedata * filedata)
|
||||
}
|
||||
else
|
||||
{
|
||||
#ifndef __MSVCRT__
|
||||
/* PR 11128: Use two separate invocations in order to work
|
||||
around bugs in the Solaris 8 implementation of printf. */
|
||||
printf (" [%6tx] ", data - start);
|
||||
#else
|
||||
printf (" [%6Ix] ", (size_t) (data - start));
|
||||
#endif
|
||||
printf (" [%6lx] ", (unsigned long) (data - start));
|
||||
}
|
||||
|
||||
if (maxlen > 0)
|
||||
|
Reference in New Issue
Block a user