diff --git a/src/core/gc.c b/src/core/gc.c index 22849ad9..05c6bd16 100644 --- a/src/core/gc.c +++ b/src/core/gc.c @@ -195,6 +195,11 @@ recur: if (janet_gc_reachable(fiber)) return; janet_gc_mark(fiber); + + /* Mark values on the argument stack */ + janet_mark_many(fiber->data + fiber->stackstart, + fiber->stacktop - fiber->stackstart); + i = fiber->frame; j = fiber->stackstart - JANET_FRAME_SIZE; while (i > 0) { diff --git a/src/mainclient/init.janet b/src/mainclient/init.janet index c14ba072..86c217eb 100644 --- a/src/mainclient/init.janet +++ b/src/mainclient/init.janet @@ -51,7 +51,7 @@ (when (or *should-repl* *no-file*) (if *raw-stdin* - (repl nil identity) + (repl nil (fn [x &] x)) (do (print (string "Janet " janet/version "-" janet/build " Copyright (C) 2017-2018 Calvin Rose")) (repl (fn [buf p]