diff --git a/src/lib/gensym.pl b/src/lib/gensym.pl index 92cd4d1f7..272e68bdc 100644 --- a/src/lib/gensym.pl +++ b/src/lib/gensym.pl @@ -19,14 +19,14 @@ must_be(var, Unique), atom_si(Base), gensym_key(Base, BaseKey), - ( bb_get(BaseKey, UniqueID0) -> - UniqueID is UniqueID0 + 1, - bb_put(BaseKey, UniqueID), - append_id(Base, UniqueID, Unique) - ; bb_put(BaseKey, 1), - append_id(Base, 1, Unique) - ). + ( bb_get(BaseKey, UniqueID0) -> true + ; UniqueID0 = 0 + ), + UniqueID is UniqueID0 + 1, + append_id(Base, UniqueID, Unique), + bb_put(BaseKey, UniqueID). reset_gensym(Base) :- atom_si(Base), - bb_put(Base, 0). + gensym_key(Base, BaseKey), + bb_put(BaseKey, 0).