From 6c2119acf78b4a48caa918c1d63aac7a64a19c82 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 23 Apr 2024 07:07:51 -0700 Subject: objcopy.c: Fix bfd_copy_private_symbol_data on 32-bit hosts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use long with bfd_copy_private_symbol_data to fix .../binutils/objcopy.c: In function ‘copy_object’: .../binutils/objcopy.c:3383:17: error: comparison of integer expressions of different signedness: ‘unsigned int’ and ‘long int’ [-Werror=sign-compare] 3383 | for (i = 0; i < symcount; i++) | ^ on 32-bit hosts. PR binutils/14493 * objcopy.c (copy_object): Use long with bfd_copy_private_symbol_data. --- binutils/objcopy.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/binutils/objcopy.c b/binutils/objcopy.c index 634ebae..e8ca1374 100644 --- a/binutils/objcopy.c +++ b/binutils/objcopy.c @@ -3380,8 +3380,8 @@ copy_object (bfd *ibfd, bfd *obfd, const bfd_arch_info_type *input_arch) symcount = filter_symbols (ibfd, obfd, osympp, isympp, symcount); } - for (i = 0; i < symcount; i++) - if (!bfd_copy_private_symbol_data (ibfd, osympp[i], obfd, osympp[i])) + for (long s = 0; s < symcount; s++) + if (!bfd_copy_private_symbol_data (ibfd, osympp[s], obfd, osympp[s])) { status = 1; return false; -- cgit v1.1