From 632d5e3f40a2ac9128fa6cff14b24dccc2c4abda Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Sat, 13 Aug 2022 13:29:49 -0400 Subject: [PATCH] fix(core-logic): ensure store IDs fit in 5 bits --- src/core-logic/term.ml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/core-logic/term.ml b/src/core-logic/term.ml index 5afb6c41..5147cf08 100644 --- a/src/core-logic/term.ml +++ b/src/core-logic/term.ml @@ -161,7 +161,8 @@ module Store = struct let n = ref 0 let create ?(size = 256) () : t = - let s_uid = !n in + (* store id, modulo 2^5 *) + let s_uid = !n land store_id_mask in incr n; { s_uid; s_exprs = Hcons.create ~size () }