https://gitlab.com/embeddable-common-lisp/ecl/-/issues/705 diff --git src/c/alloc_2.d src/c/alloc_2.d index 761298d5a..04c69ba52 100644 --- src/c/alloc_2.d +++ src/c/alloc_2.d @@ -760,10 +760,12 @@ init_alloc(void) * the begining or to the first byte. * 3) Out of the incremental garbage collector, we only use the * generational component. + * 4) GC should handle fork() which is used to run subprocess. */ GC_set_no_dls(1); GC_set_all_interior_pointers(0); GC_set_time_limit(GC_TIME_UNLIMITED); + GC_set_handle_fork(1); GC_init(); #ifdef ECL_THREADS # if GC_VERSION_MAJOR > 7 || GC_VERSION_MINOR > 1