summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--match.c3
-rw-r--r--txr.c4
2 files changed, 5 insertions, 2 deletions
diff --git a/match.c b/match.c
index b7692e11..4a34b544 100644
--- a/match.c
+++ b/match.c
@@ -4245,6 +4245,9 @@ static val v_load(match_files_ctx *c)
dyn_env = saved_dyn_env;
+ if (!rec)
+ uw_release_deferred_warnings();
+
uw_unwind {
close_stream(stream, nil);
if (!rec)
diff --git a/txr.c b/txr.c
index b15d275a..afe07971 100644
--- a/txr.c
+++ b/txr.c
@@ -969,6 +969,8 @@ int txr_main(int argc, char **argv)
reg_var(args_s, or2(orig_args, arg_list));
reg_varl(intern(lit("self-path"), user_package), spec_file_str);
+ env_vbind(dyn_env, load_recursive_s, t);
+
if (!txr_lisp_p)
{
int gc = gc_state(0);
@@ -1012,8 +1014,6 @@ int txr_main(int argc, char **argv)
reg_varl(car(binding), cdr(binding));
}
- env_vbind(dyn_env, load_recursive_s, t);
-
{
val result = read_eval_stream(parse_stream, std_error, t);