From 8c419a91d761989b824d1bbe3b4575068317181e Mon Sep 17 00:00:00 2001 From: Nick Alcock Date: Tue, 21 Jul 2020 15:38:08 +0100 Subject: libctf: fixes for systems on which sizeof (void *) > sizeof (long) Systems like mingw64 have pointers that can only be represented by 'long long'. Consistently cast integers stored in pointers through uintptr_t to cater for this. libctf/ * ctf-create.c (ctf_dtd_insert): Add uintptr_t casts. (ctf_dtd_delete): Likewise. (ctf_dtd_lookup): Likewise. (ctf_rollback): Likewise. * ctf-hash.c (ctf_hash_lookup_type): Likewise. * ctf-types.c (ctf_lookup_by_rawhash): Likewise. --- libctf/ctf-hash.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'libctf/ctf-hash.c') diff --git a/libctf/ctf-hash.c b/libctf/ctf-hash.c index 2975260..d6e9f5e 100644 --- a/libctf/ctf-hash.c +++ b/libctf/ctf-hash.c @@ -829,7 +829,7 @@ ctf_hash_lookup_type (ctf_hash_t *hp, ctf_file_t *fp __attribute__ ((__unused__) slot = ctf_hashtab_lookup ((struct htab *) hp, key, NO_INSERT); if (slot) - return (ctf_id_t) ((*slot)->value); + return (ctf_id_t) (uintptr_t) ((*slot)->value); return 0; } -- cgit v1.1