diff options
Diffstat (limited to 'hash.c')
-rw-r--r-- | hash.c | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -122,7 +122,7 @@ rb_hash(VALUE obj) return hval; } -st_index_t rb_objid_hash(st_index_t index); +long rb_objid_hash(st_index_t index); static st_index_t rb_any_hash(VALUE a) @@ -132,8 +132,7 @@ rb_any_hash(VALUE a) if (SPECIAL_CONST_P(a)) { if (a == Qundef) return 0; - /* assume hnum is long, so need to drop upper dword on LLP64. */ - hnum = (long)rb_objid_hash((st_index_t)a); + hnum = rb_objid_hash((st_index_t)a); } else if (BUILTIN_TYPE(a) == T_STRING) { hnum = rb_str_hash(a); @@ -146,7 +145,7 @@ rb_any_hash(VALUE a) return (st_index_t)RSHIFT(hnum, 1); } -st_index_t +long rb_objid_hash(st_index_t index) { st_index_t hnum = rb_hash_start(index); |