diff options
-rw-r--r-- | eval.c | 7 | ||||
-rw-r--r-- | match.c | 4 |
2 files changed, 7 insertions, 4 deletions
@@ -4444,11 +4444,12 @@ val load(val target) close_stream(stream, nil); - uw_release_deferred_warnings(); - - if (parser->errors) + if (parser->errors) { + uw_release_deferred_warnings(); uw_throwf(query_error_s, lit("~a: parser errors in ~a"), self, path, nao); + } + { val match_ctx = uw_get_match_context(); val bindings = cdr(match_ctx); @@ -4408,8 +4408,10 @@ static val v_load(match_files_ctx *c) parse_once(self, stream, name); gc_state(gc); - if (parser->errors) + if (parser->errors) { + uw_release_deferred_warnings(); sem_error(specline, lit("~s: errors encountered in ~a"), sym, path, nao); + } if (sym == include_s) { ret = parser->syntax_tree; |