diff --git a/racket/src/racket/src/fun.c b/racket/src/racket/src/fun.c index 6d07461c7a..ae8d6db00f 100644 --- a/racket/src/racket/src/fun.c +++ b/racket/src/racket/src/fun.c @@ -9011,10 +9011,6 @@ Scheme_Lightweight_Continuation *scheme_capture_lightweight_continuation(Scheme_ Scheme_Lightweight_Continuation *lw; void *stack; -#ifndef MZ_PRECISE_GC - return NULL; -#endif - storage[1] = p; lw = MALLOC_ONE_RT(Scheme_Lightweight_Continuation); diff --git a/racket/src/racket/src/future.c b/racket/src/racket/src/future.c index 301325ec65..9295f5ac8b 100644 --- a/racket/src/racket/src/future.c +++ b/racket/src/racket/src/future.c @@ -2461,6 +2461,11 @@ static int capture_future_continuation(Scheme_Future_State *fs, future_t *ft, vo Scheme_Object **arg_S; void **stack; +#ifndef MZ_PRECISE_GC + if (scheme_use_rtcall) + return 0; +#endif + storage[2] = ft; if (for_overflow) {