diff --git a/src/core/value.c b/src/core/value.c index b54df0ce..b4a17dab 100644 --- a/src/core/value.c +++ b/src/core/value.c @@ -348,7 +348,7 @@ int32_t janet_hash(Janet x) { hash = (int32_t)((hilo << 16) | (hilo >> 16)); } else { /* Assuming 4 byte pointer (or smaller) */ - ptrdiff_t diff = ((char *)janet_unwrap_pointer(x) - (char *)0); + uintptr_t diff = janet_unwrap_pointer(x); uint32_t hilo = (uint32_t) diff * 2654435769u; hash = (int32_t)((hilo << 16) | (hilo >> 16)); }