summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2023-03-22 22:58:21 -0700
committerKaz Kylheku <kaz@kylheku.com>2023-03-22 22:58:21 -0700
commitd30606a16dc974271d2d68303077b17ccaad67c7 (patch)
tree23cc59c13cbc7636e0efbbb39595cd2c8cd6a347
parentc438b72ccc3dcb7a86153de22a92119de4e236df (diff)
downloadtxr-d30606a16dc974271d2d68303077b17ccaad67c7.tar.gz
txr-d30606a16dc974271d2d68303077b17ccaad67c7.tar.bz2
txr-d30606a16dc974271d2d68303077b17ccaad67c7.zip
ffi: gc bug in ffi_enum_type.
This is reproducible using ./txr --gc-debug tests/017/ffi-misc.tl * ffi.c (ffi_enum_type_mark): We must mark the tft->eltype because enumerations use that member.
-rw-r--r--ffi.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/ffi.c b/ffi.c
index e97eadb5..f293b59b 100644
--- a/ffi.c
+++ b/ffi.c
@@ -335,6 +335,7 @@ static void ffi_enum_type_mark(val obj)
ffi_type_common_mark(tft);
gc_mark(tft->sym_num);
gc_mark(tft->num_sym);
+ gc_mark(tft->eltype);
}
static struct cobj_ops ffi_type_builtin_ops =