prolog gc now works again

parent 4d6c25e2
......@@ -48,6 +48,7 @@ int is_gc_locked();
inline int GP_VAL_UNBOUND(SCM *fr)
{
SCM x = GP_GET_VAL(fr);
if(scm_is_true(x))
{
SCM *f = GP_GETREF(x);
......@@ -1228,6 +1229,16 @@ static void gp_module_stack_init()
void gp_init_stacks()
{
gp_stacks = scm_make_weak_key_hash_table(scm_from_int(128));
gp_nil_fr = gp_make_variable();
gp_nil_ci = gp_make_variable();
scm_t_bits tag = GP_MK_FRAME_EQ(gp_type);
SET_FRAME(tag);
GP_GETREF(gp_nil_fr)[0] = SCM_PACK(GP_MK_FRAME_EQ(gp_type));
GP_GETREF(gp_nil_ci)[0] = SCM_PACK(tag);
GP_GETREF(gp_nil_fr)[1] = scm_from_int(GP_FRAMESIZE);
GP_GETREF(gp_nil_ci)[1] = scm_from_int(0);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment