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

built-in-class-of



The code below does break KCL because of recursive
compile.  So i conditionalized it.

From high.lisp:

(defmacro define-built-in-classes (classes-and-supers &optional reset-p)
  `(eval-when (compile load eval)
     (when ,reset-p (setq *built-in-class-lattice* ()))
     (dolist (bic ,classes-and-supers)
       (pushnew bic *built-in-class-lattice* :test #'equal))     
     (define-built-in-classes-1)
#-kcl     (compile 'built-in-class-of (make-built-in-class-of))
;
;     This code was commented out and replaced with the above line
;     but I think that might break KCL or Golden.     
;
#+kcl (setf (symbol-function 'built-in-class-of)
	   #'(lambda (x)
	       (declare (notinline built-in-class-of))
	       (compile 'built-in-class-of (make-built-in-class-of))
	       (built-in-class-of x)))
     
     ))