From: Mark Wooding Date: Thu, 26 May 2016 08:26:09 +0000 (+0100) Subject: src/module-parse.lisp: Report an error if the top-level parse fails. X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/sod/commitdiff_plain/300a3f0a55f777216bcc7e9de833b28fb57104ac src/module-parse.lisp: Report an error if the top-level parse fails. --- diff --git a/src/module-parse.lisp b/src/module-parse.lisp index 83cc0ad..9fa9a1f 100644 --- a/src/module-parse.lisp +++ b/src/module-parse.lisp @@ -108,11 +108,14 @@ (define-module (pathname :location location :truename truename) :char-scanner char-scanner))) (with-default-error-location (scanner) (with-parser-context (token-scanner-context :scanner scanner) - (parse (skip-many () - (seq ((pset (parse-property-set scanner)) - (nil (error () - (plug module scanner pset)))) - (check-unused-properties pset)))))))))) + (multiple-value-bind (result winp consumedp) + (parse (skip-many () + (seq ((pset (parse-property-set scanner)) + (nil (error () + (plug module scanner pset)))) + (check-unused-properties pset)))) + (declare (ignore consumedp)) + (unless winp (syntax-error scanner result))))))))) (define-pluggable-parser module test (scanner pset) ;; `demo' string `;'