Fixes the following compilation warning for 64-bit arch with TLS support:
CC ldso/libdl/libdl.oS
ldso/libdl/libdl.c: In function 'do_dlsym':
ldso/libdl/libdl.c:739:59: warning: cast from pointer to integer of different size
[-Wpointer-to-int-cast]
ret = _dl_tls_symaddr ((struct link_map *)sym_ref.tpnt, (Elf32_Addr)ret);
^
---
ldso/libdl/libdl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c
index ac0acd504..37c4a876e 100644
--- a/ldso/libdl/libdl.c
+++ b/ldso/libdl/libdl.c
@@ -187,7 +187,7 @@ static const char *const dl_error_names[] = {
*/
static void *
internal_function
-_dl_tls_symaddr(struct link_map *map, const Elf32_Addr st_value)
+_dl_tls_symaddr(struct link_map *map, const ElfW(Addr) st_value)
{
# ifndef DONT_USE_TLS_INDEX
tls_index tmp =
@@ -736,7 +736,7 @@ static void *do_dlsym(void *vhandle, const char *name, void
*caller_address)
if (sym_ref.sym && (ELF_ST_TYPE(sym_ref.sym->st_info) == STT_TLS) &&
(sym_ref.tpnt)) {
/* The found symbol is a thread-local storage variable.
Return its address for the current thread. */
- ret = _dl_tls_symaddr ((struct link_map *)sym_ref.tpnt, (Elf32_Addr)ret);
+ ret = _dl_tls_symaddr ((struct link_map *)sym_ref.tpnt, (ElfW(Addr))ret);
}
#endif
--
2.17.1
Show replies by date