summaryrefslogtreecommitdiff
path: root/ptr_chck.c
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2011-08-21 09:45:57 +0200
committerIvan Maidanski <ivmai@mail.ru>2011-09-12 10:41:47 +0200
commitbec60375e750fb413118ea50e388a3b0f076fdcb (patch)
tree02e3c26ae94b504d671f00a6badbb67b59a77a6c /ptr_chck.c
parent83d1405f500cbb941148dee3f316aaaeb2bf5fab (diff)
Resolve "comparison of signed and unsigned values" compiler warnings.
* allchblk.c (GC_allochblk_nth): Cast MAX_BLACK_LIST_ALLOC and HBLKSIZE to signed_word. * mallocx.c (GC_generic_malloc_many): Cast my_bytes_allocd to word. * mark.c (GC_do_local_mark): Cast the result of local_top minus local_mark_stack to word (since is non-negative). * misc.c (GC_base): Declare sz as unsigned word. * misc.c (GC_enable_incremental): Cast bytes_written to size_t in comparison to len. * obj_map.c (GC_initialize_offsets): Declare 'i' as unsigned. * os_dep.c (GC_or_pages): Ditto. * typd_mlc.c (GC_init_explicit_typing): Ditto. * ptr_chck.c (GC_is_visible): Cast the result of p minus base to word. * typd_mlc.c (GC_make_descriptor): Cast last_set_bit to word (since non-negative) when compared to BITMAP_BITS.
Diffstat (limited to 'ptr_chck.c')
-rw-r--r--ptr_chck.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ptr_chck.c b/ptr_chck.c
index d8076e8..5b3cc0a 100644
--- a/ptr_chck.c
+++ b/ptr_chck.c
@@ -226,7 +226,7 @@ GC_API void * GC_CALL GC_is_visible(void *p)
if ((word)((ptr_t)p - (ptr_t)base) > (word)descr) goto fail;
break;
case GC_DS_BITMAP:
- if ((ptr_t)p - (ptr_t)base
+ if ((word)((ptr_t)p - (ptr_t)base)
>= WORDS_TO_BYTES(BITMAP_BITS)
|| ((word)p & (sizeof(word) - 1))) goto fail;
if (!(((word)1 << (WORDSZ - ((ptr_t)p - (ptr_t)base) - 1))