[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

patch to with-compilation-unit in defsystem.lisp



There were a few bugs in the definition of with-compilation-unit in
ew/code/defsystem.lisp.  I think the appended replacement code should work
okay.

Steve
--
Stephen L. Nicoud  <snicoud@atc.boeing.com>  uw-beaver!bcsaic!snicoud
Boeing Advanced Technology Center for Computer Sciences


  (defmacro with-compilation-unit ((&rest options &key override (verbose :default) &allow-other-keys) &body body)
    #-excl (declare (ignore options))
    (setq override (case override
		     #+lispm (:warn :just-warn)
		     #-lucid (:query nil)
		     (t override)))
    `(#+lucid lucid::with-deferred-warnings
      #+symbolics compiler:compiler-warnings-context-bind
      #-(or lucid symbolics) progn
      (let (#+lispm (SYS:INHIBIT-FDEFINE-WARNINGS ,override)
	    #+lucid (lcl::*redefinition-action* ,override)
	    #+excl (excl::*redefinition-warnings* ,override)
	    #+excl (compiler::*compile-verbose* (if (eq ':default ,verbose) compiler::*compile-verbose* ,verbose))
	    #+lucid (lucid::*compiler-options* (apply #'lucid::process-compiler-options
						      (unless (eq ':default ,verbose) (list ':messages ,verbose))))
	    #+symbolics (compiler::compiler-verbose (if (eq ':default ,verbose) compiler::compiler-verbose ,verbose)))
	#+(or symbolics excl lucid)
	(declare (special #+symbolics compiler::compiler-verbose
			  #+excl compiler::*compile-verbose*
			  #+lucid lucid::*compiler-options*))
	.,body)))