From 0f5a0991f2c11747b7f09e8efd8774c7a21ddcdd Mon Sep 17 00:00:00 2001 From: David Vazquez Date: Sat, 22 Dec 2012 02:17:41 +0000 Subject: [PATCH 1/1] with-compilation-unit --- lispstrack.lisp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lispstrack.lisp b/lispstrack.lisp index 3c3b7a0..8de2794 100644 --- a/lispstrack.lisp +++ b/lispstrack.lisp @@ -652,6 +652,18 @@ (ls-compile (ls-macroexpand-1 sexp env fenv) env fenv) (compile-funcall (car sexp) (cdr sexp) env fenv)))))) +(defmacro with-compilation-unit (&rest body) + `(progn + (setq *env* nil) + (setq *fenv* nil) + (setq *compilation-unit-checks* nil) + ,@body + (dolist (check *compilation-unit-checks*) + (funcall check)) + (setq *env* nil) + (setq *fenv* nil) + (setq *compilation-unit-checks* nil))) + (defun ls-compile-toplevel (sexp) (setq *toplevel-compilations* nil) (let ((code (ls-compile sexp nil nil))) -- 1.7.10.4