diff options
author | Johannes Schindelin <johannes.schindelin@gmx.de> | 2015-10-26 14:15:25 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2015-10-26 13:24:03 -0700 |
commit | 56a1a3ab449df33268776a8b72a301d3ee67ad8d (patch) | |
tree | 151de5a2bd3b18e97da16590f03c660a5cb5103e /sha1_file.c | |
parent | Squelch warning about an integer overflow (diff) | |
download | tgif-56a1a3ab449df33268776a8b72a301d3ee67ad8d.tar.xz |
Silence GCC's "cast of pointer to integer of a different size" warning
When calculating hashes from pointers, it actually makes sense to cut
off the most significant bits. In that case, said warning does not make
a whole lot of sense.
So let's just work around it by casting the pointer first to intptr_t
and then casting up/down to the final integral type.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'sha1_file.c')
-rw-r--r-- | sha1_file.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sha1_file.c b/sha1_file.c index b231b62784..2350a91dbe 100644 --- a/sha1_file.c +++ b/sha1_file.c @@ -2014,7 +2014,7 @@ static unsigned long pack_entry_hash(struct packed_git *p, off_t base_offset) { unsigned long hash; - hash = (unsigned long)p + (unsigned long)base_offset; + hash = (unsigned long)(intptr_t)p + (unsigned long)base_offset; hash += (hash >> 8) + (hash >> 16); return hash % MAX_DELTA_CACHE; } |