src/final.lisp (test-module): Optionally clear the decks before parsing.
authorMark Wooding <mdw@distorted.org.uk>
Sat, 25 Mar 2017 18:12:36 +0000 (18:12 +0000)
committerMark Wooding <mdw@distorted.org.uk>
Fri, 8 Jun 2018 18:58:28 +0000 (19:58 +0100)
doc/misc.tex
src/final.lisp

index ba76cd8..e97fcb0 100644 (file)
@@ -568,7 +568,7 @@ These symbols are defined in the @!optparse| package.
 \begin{describe}{var}{*debugout-pathname*}
 \end{describe}
 
-\begin{describe}{fun}{test-module @<path> \&key :reason @> @<status>}
+\begin{describe}{fun}{test-module @<path> \&key :reason :clear @> @<status>}
 \end{describe}
 
 \begin{describe}{fun}
index b98acd1..0528491 100644 (file)
 (defvar *debugout-pathname* #p"debugout.c")
 
 (export 'test-module)
-(defun test-module (path &key reason)
+(defun test-module (path &key reason clear)
   "Read a module from PATH, to exercise the machinery.
 
+   If CLEAR is non-nil, then reset the translator's state before proceeding.
+
    If REASON is non-nil, then output the module to `*debugout-pathname*' with
    that REASON.
 
    Return a two-element list (NERROR NWARNING) of the number of errors and
    warnings encountered while processing the module."
+  (when clear (clear-the-decks))
   (multiple-value-bind (module nerror nwarning)
       (count-and-report-errors () (read-module path))
     (when (and module reason)