diff --git a/lib/chibi/parse/parse.scm b/lib/chibi/parse/parse.scm index 25bdaa35..d2fc3091 100644 --- a/lib/chibi/parse/parse.scm +++ b/lib/chibi/parse/parse.scm @@ -307,7 +307,7 @@ (define (parse->list f source . o) (let ((index (if (pair? o) (car o) 0))) - (reverse (parse-fold cons '() f source index)))) + (reverse (parse-fold f cons '() source index)))) ;;> As \scheme{parse->list} but requires the entire source be parsed ;;> with no left over characters, signalling an error otherwise. diff --git a/main.c b/main.c index 9c72a1c9..6c31c3e3 100644 --- a/main.c +++ b/main.c @@ -614,7 +614,7 @@ sexp run_main (int argc, char **argv) { sym = sexp_intern(ctx, main_symbol, -1); tmp = sexp_env_ref(ctx, env, sym, SEXP_FALSE); if (sexp_procedurep(tmp)) { - args = sexp_list1(ctx, sexp_cdr(args)); + args = sexp_list1(ctx, args); check_exception(ctx, sexp_apply(ctx, tmp, args)); } else { fprintf(stderr, "couldn't find main binding: %s in %s\n", main_symbol, main_module ? main_module : argv[i]);