hash table iterator callback functions int vs. bfd_boolean
Alan Modra
amodra@gmail.com
Mon Mar 29 00:40:04 GMT 2021
Correct return type of callbacks invoked by htab_traverse and other
hashtab.h functions to int, and one case of a callback invoked by
elf_link_hash_traverse to bfd_boolean.
* elf32-i386.c (elf_i386_finish_local_dynamic_symbol): Return int.
* elf64-ia64-vms.c (elf64_ia64_local_dyn_info_free): Likewise.
(elf64_ia64_local_dyn_sym_thunk): Likewise.
* elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): Likewise.
* elfnn-aarch64.c (elfNN_aarch64_allocate_local_ifunc_dynrelocs),
(elfNN_aarch64_finish_local_dynamic_symbol): Likewise.
* elfnn-ia64.c (elfNN_ia64_local_dyn_info_free): Likewise.
(elfNN_ia64_local_dyn_sym_thunk): Likewise.
* elfnn-riscv.c (allocate_local_ifunc_dynrelocs): Likewise.
(riscv_pcrel_reloc_eq): Likewise.
(riscv_elf_finish_local_dynamic_symbol): Likewise.
* elfxx-sparc.c (allocate_local_dynrelocs): Likewise.
(finish_local_dynamic_symbol): Likewise.
* elfxx-x86.c (elf_x86_allocate_local_dynreloc): Likewise.
* elfxx-mips.c (mips_elf_resolve_got_page_ref): Likewise.
(mips_elf_count_got_symbols): Change return type to bfd_boolean.
diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
index b95340f2897..ccbf2d6d0e6 100644
--- a/bfd/elf32-i386.c
+++ b/bfd/elf32-i386.c
@@ -3918,7 +3918,7 @@ elf_i386_finish_dynamic_symbol (bfd *output_bfd,
/* Finish up local dynamic symbol handling. We set the contents of
various dynamic sections here. */
-static bfd_boolean
+static int
elf_i386_finish_local_dynamic_symbol (void **slot, void *inf)
{
struct elf_link_hash_entry *h
diff --git a/bfd/elf64-ia64-vms.c b/bfd/elf64-ia64-vms.c
index 0a8cbc6b5b1..617ecfe5d08 100644
--- a/bfd/elf64-ia64-vms.c
+++ b/bfd/elf64-ia64-vms.c
@@ -1010,7 +1010,7 @@ elf64_ia64_global_dyn_info_free (void **xentry,
/* Free the local elf64_ia64_dyn_sym_info array. */
-static bfd_boolean
+static int
elf64_ia64_local_dyn_info_free (void **slot,
void * unused ATTRIBUTE_UNUSED)
{
@@ -1111,7 +1111,7 @@ elf64_ia64_global_dyn_sym_thunk (struct bfd_hash_entry *xentry,
return TRUE;
}
-static bfd_boolean
+static int
elf64_ia64_local_dyn_sym_thunk (void **slot, void * xdata)
{
struct elf64_ia64_local_hash_entry *entry
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 2fcba8bfd60..5edbb7084ad 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -4574,7 +4574,7 @@ elf_x86_64_finish_dynamic_symbol (bfd *output_bfd,
/* Finish up local dynamic symbol handling. We set the contents of
various dynamic sections here. */
-static bfd_boolean
+static int
elf_x86_64_finish_local_dynamic_symbol (void **slot, void *inf)
{
struct elf_link_hash_entry *h
diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c
index ccabc4fdcf3..3ec0983caff 100644
--- a/bfd/elfnn-aarch64.c
+++ b/bfd/elfnn-aarch64.c
@@ -8828,7 +8828,7 @@ elfNN_aarch64_allocate_ifunc_dynrelocs (struct elf_link_hash_entry *h,
/* Allocate space in .plt, .got and associated reloc sections for
local ifunc dynamic relocs. */
-static bfd_boolean
+static int
elfNN_aarch64_allocate_local_ifunc_dynrelocs (void **slot, void *inf)
{
struct elf_link_hash_entry *h
@@ -9475,7 +9475,7 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd,
/* Finish up local dynamic symbol handling. We set the contents of
various dynamic sections here. */
-static bfd_boolean
+static int
elfNN_aarch64_finish_local_dynamic_symbol (void **slot, void *inf)
{
struct elf_link_hash_entry *h
diff --git a/bfd/elfnn-ia64.c b/bfd/elfnn-ia64.c
index 5cb9e686835..04bf7d7f25a 100644
--- a/bfd/elfnn-ia64.c
+++ b/bfd/elfnn-ia64.c
@@ -1408,7 +1408,7 @@ elfNN_ia64_global_dyn_info_free (void **xentry,
/* Free the local elfNN_ia64_dyn_sym_info array. */
-static bfd_boolean
+static int
elfNN_ia64_local_dyn_info_free (void **slot,
void * unused ATTRIBUTE_UNUSED)
{
@@ -1507,7 +1507,7 @@ elfNN_ia64_global_dyn_sym_thunk (struct bfd_hash_entry *xentry,
return TRUE;
}
-static bfd_boolean
+static int
elfNN_ia64_local_dyn_sym_thunk (void **slot, void * xdata)
{
struct elfNN_ia64_local_hash_entry *entry
diff --git a/bfd/elfnn-riscv.c b/bfd/elfnn-riscv.c
index ddccb40e243..391846aaa69 100644
--- a/bfd/elfnn-riscv.c
+++ b/bfd/elfnn-riscv.c
@@ -1352,7 +1352,7 @@ allocate_ifunc_dynrelocs (struct elf_link_hash_entry *h,
/* Allocate space in .plt, .got and associated reloc sections for
local ifunc dynamic relocs. */
-static bfd_boolean
+static int
allocate_local_ifunc_dynrelocs (void **slot, void *inf)
{
struct elf_link_hash_entry *h
@@ -1766,7 +1766,7 @@ riscv_pcrel_reloc_hash (const void *entry)
return (hashval_t)(e->address >> 2);
}
-static bfd_boolean
+static int
riscv_pcrel_reloc_eq (const void *entry1, const void *entry2)
{
const riscv_pcrel_hi_reloc *e1 = entry1, *e2 = entry2;
@@ -3110,7 +3110,7 @@ riscv_elf_finish_dynamic_symbol (bfd *output_bfd,
/* Finish up local dynamic symbol handling. We set the contents of
various dynamic sections here. */
-static bfd_boolean
+static int
riscv_elf_finish_local_dynamic_symbol (void **slot, void *inf)
{
struct elf_link_hash_entry *h = (struct elf_link_hash_entry *) *slot;
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 6d2909fab19..07a233ff920 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -4362,7 +4362,7 @@ mips_elf_record_got_page_entry (struct mips_elf_traverse_got_arg *arg,
whether the page reference described by *REFP needs a GOT page entry,
and record that entry in DATA->g if so. Set DATA->g to null on failure. */
-static bfd_boolean
+static int
mips_elf_resolve_got_page_ref (void **refp, void *data)
{
struct mips_got_page_ref *ref;
@@ -4530,7 +4530,7 @@ mips_use_local_got_p (struct bfd_link_info *info,
Count the number of global symbols that are in the primary GOT only
because they have relocations against them (reloc_only_gotno). */
-static int
+static bfd_boolean
mips_elf_count_got_symbols (struct mips_elf_link_hash_entry *h, void *data)
{
struct bfd_link_info *info;
diff --git a/bfd/elfxx-sparc.c b/bfd/elfxx-sparc.c
index 2173465e651..f2ef9a34499 100644
--- a/bfd/elfxx-sparc.c
+++ b/bfd/elfxx-sparc.c
@@ -2345,7 +2345,7 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void * inf)
/* Allocate space in .plt, .got and associated reloc sections for
local dynamic relocs. */
-static bfd_boolean
+static int
allocate_local_dynrelocs (void **slot, void *inf)
{
struct elf_link_hash_entry *h
@@ -4658,7 +4658,7 @@ sparc_vxworks_finish_shared_plt (bfd *output_bfd, struct bfd_link_info *info)
/* Finish up local dynamic symbol handling. We set the contents of
various dynamic sections here. */
-static bfd_boolean
+static int
finish_local_dynamic_symbol (void **slot, void *inf)
{
struct elf_link_hash_entry *h
diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c
index 6ff9fd56ee7..81c1e5c7fa6 100644
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -534,7 +534,7 @@ elf_x86_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
/* Allocate space in .plt, .got and associated reloc sections for
local dynamic relocs. */
-static bfd_boolean
+static int
elf_x86_allocate_local_dynreloc (void **slot, void *inf)
{
struct elf_link_hash_entry *h
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list