diff --git a/runtime.c b/runtime.c index b0ccc85..28ed2cc 100644 --- a/runtime.c +++ b/runtime.c @@ -2576,6 +2576,9 @@ C_regparm C_word C_fcall C_mutate(C_word *slot, C_word val) mutation_stack_limit = mutation_stack_bottom + newmssize; mutation_stack_top = mutation_stack_bottom + mssize; + + /* Heap needs to resize at least this many bytes plus its normal growth */ + heap_size += bytes; } *(mutation_stack_top++) = slot;