[cells-cvs] CVS cells

phildebrandt phildebrandt at common-lisp.net
Mon Feb 11 14:47:31 UTC 2008


Update of /project/cells/cvsroot/cells
In directory clnet:/tmp/cvs-serv25158

Modified Files:
	defmodel.lisp 
Log Message:
sbcl fixes (forward declaration of reader methods, eval-when)


--- /project/cells/cvsroot/cells/defmodel.lisp	2008/02/01 15:52:49	1.14
+++ /project/cells/cvsroot/cells/defmodel.lisp	2008/02/11 14:47:30	1.15
@@ -46,7 +46,9 @@
 				  `(eval-when (:compile-toplevel :execute :load-toplevel)
 				     (unless (macro-function ',deriver-fn)
 				       (defmacro ,deriver-fn ()
-					 `(,',reader-fn self))))))))))
+					 `(,',reader-fn self)))
+				     #+sbcl (unless (fboundp ',reader-fn)
+					      (defgeneric ,reader-fn (slot))))))))))
      
 					;
 					; -------  defclass ---------------  (^slot-value ,model ',',slotname)
@@ -98,9 +100,8 @@
                        (let* ((reader-fn (or reader accessor))
                               (writer-fn (or writer accessor))
                               )
-                         `(progn
+                         `(eval-when (#+sbcl :load-toplevel :execute) ; ph -- prevent sbcl warning
                             (setf (md-slot-cell-type ',class ',slotname) ,cell)
-                         
                             ,(when owning
 				   `(setf (md-slot-owning ',class ',slotname) ,owning))
                             ,(when reader-fn




More information about the Cells-cvs mailing list