X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fdlisp3.lisp;h=c935ec2cfc32b1e6fe3da4ac439df487de13ae1a;hb=d7cbe5c40e93796d326937f3fb962fa4d7b1fa85;hp=4ff456756a0cb2050a6040b018b2fcc8997b1bd1;hpb=a530bbe337109d898d5b4a001fc8f1afa3b5dc39;p=sbcl.git diff --git a/src/pcl/dlisp3.lisp b/src/pcl/dlisp3.lisp index 4ff4567..c935ec2 100644 --- a/src/pcl/dlisp3.lisp +++ b/src/pcl/dlisp3.lisp @@ -22,9 +22,6 @@ ;;;; specification. (in-package "SB-PCL") - -(sb-int:file-comment - "$Header$") (eval-when (:compile-toplevel :load-toplevel :execute) (defparameter *checking-or-caching-list* @@ -62,22 +59,17 @@ (nil nil (class class) t))) ) ; EVAL-WHEN -(defmacro make-checking-or-caching-function-list () - `(list ,@(mapcar #'(lambda (key) - `(cons ',key (emit-checking-or-caching-macro ,@key))) - *checking-or-caching-list*))) - ;;; Rather than compiling the constructors here, just tickle the range ;;; of shapes defined above, leaving the generation of the ;;; constructors to precompile-dfun-constructors. (dolist (key *checking-or-caching-list*) (destructuring-bind (cached-emf-p return-value-p metatypes applyp) key (multiple-value-bind (args generator) - (if cached-emf-p - (if return-value-p - (values (list metatypes) 'emit-constant-value) - (values (list metatypes applyp) 'emit-caching)) - (if return-value-p - (values (list metatypes) 'emit-in-checking-p) - (values (list metatypes applyp) 'emit-checking))) + (if cached-emf-p + (if return-value-p + (values (list metatypes) 'emit-constant-value) + (values (list metatypes applyp) 'emit-caching)) + (if return-value-p + (values (list metatypes) 'emit-in-checking-p) + (values (list metatypes applyp) 'emit-checking))) (apply #'get-dfun-constructor generator args))))