diff --git a/core/collections/hashtables.factor b/core/collections/hashtables.factor index 8b66652c9a..b0e5ef2f57 100644 --- a/core/collections/hashtables.factor +++ b/core/collections/hashtables.factor @@ -34,7 +34,7 @@ TUPLE: tombstone ; >r >r [ key@ ] 2keep pick -1 > r> r> if ; inline : ( n -- array ) - 1+ 4 * ((empty)) ; inline + >fixnum 1+ 4 * ((empty)) ; inline : init-hash ( hash -- ) 0 over set-hash-count 0 swap set-hash-deleted ; diff --git a/core/test/collections/hashtables.factor b/core/test/collections/hashtables.factor index 0a742e1df2..276bf876ae 100644 --- a/core/test/collections/hashtables.factor +++ b/core/test/collections/hashtables.factor @@ -202,3 +202,6 @@ H{ } clone "cache-test" set ! Resource leak... H{ } "x" set 100 [ drop "x" get clear-hash ] each + +! Crash discovered by erg +[ t ] [ 3/4 dup clone = ] unit-test