summaryrefslogtreecommitdiffstats
path: root/match.c
diff options
context:
space:
mode:
Diffstat (limited to 'match.c')
-rw-r--r--match.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/match.c b/match.c
index 10fd1770..15bb7e79 100644
--- a/match.c
+++ b/match.c
@@ -4310,7 +4310,11 @@ static val v_load(match_files_ctx *c)
} else {
uw_set_match_context(cons(c->spec, c->bindings));
- if (!read_eval_stream(stream, std_error)){
+ if (txr_lisp_p == chr('o') && !read_compiled_file(stream, std_error)) {
+ close_stream(stream, nil);
+ uw_throwf(error_s, lit("load: unable to load compiled file ~a"),
+ path, nao);
+ } else if (!read_eval_stream(stream, std_error)) {
close_stream(stream, nil);
sem_error(specline, lit("load: ~a contains errors"), path, nao);
}