mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-18 21:29:19 +02:00
fixing debug_gc build
This commit is contained in:
parent
2ecbe98aaf
commit
0c856a1bba
1 changed files with 2 additions and 2 deletions
4
gc.c
4
gc.c
|
@ -188,7 +188,7 @@ int sexp_valid_object_p (sexp ctx, sexp x) {
|
||||||
return sexp_in_heap_p(ctx, x) && sexp_valid_object_type_p(ctx, x)
|
return sexp_in_heap_p(ctx, x) && sexp_valid_object_type_p(ctx, x)
|
||||||
&& sexp_valid_header_magic_p(ctx, x);
|
&& sexp_valid_header_magic_p(ctx, x);
|
||||||
}
|
}
|
||||||
#define sexp_gc_pass_ctx(x) (x),
|
#define sexp_gc_pass_ctx(x) x,
|
||||||
#else
|
#else
|
||||||
#define sexp_gc_pass_ctx(x)
|
#define sexp_gc_pass_ctx(x)
|
||||||
#endif
|
#endif
|
||||||
|
@ -205,7 +205,7 @@ void sexp_mark_one (sexp_gc_pass_ctx(sexp ctx) sexp* types, sexp x) {
|
||||||
for (saves=sexp_context_saves(x); saves; saves=saves->next)
|
for (saves=sexp_context_saves(x); saves; saves=saves->next)
|
||||||
if (saves->var) sexp_mark_one(sexp_gc_pass_ctx(ctx) types, *(saves->var));
|
if (saves->var) sexp_mark_one(sexp_gc_pass_ctx(ctx) types, *(saves->var));
|
||||||
}
|
}
|
||||||
t = types[x->tag];
|
t = types[sexp_pointer_tag(x)];
|
||||||
len = sexp_type_num_slots_of_object(t, x) - 1;
|
len = sexp_type_num_slots_of_object(t, x) - 1;
|
||||||
if (len >= 0) {
|
if (len >= 0) {
|
||||||
p = (sexp*) (((char*)x) + sexp_type_field_base(t));
|
p = (sexp*) (((char*)x) + sexp_type_field_base(t));
|
||||||
|
|
Loading…
Add table
Reference in a new issue