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

kcl and with-slots* with-accessors*



The "beta test release of February 3 1988" omitted the
&environment shuffle, required by kcl, when defining
with-slots* and with-accessors*.  Here are diffs for that.
Ron Stanonik
stanonik@nprdc.arpa

--- std-class.lsp	Thu Feb 11 18:55:28 1988
***************
*** 680,688 ****
  
  
  
! (defmacro with-slots* (&whole whole
! 			      slots instance &body body
! 		       &environment env)
    (let ((gensym (gensym)))
      (expand-with-slots* whole
  			(mapcar #'(lambda (ss)
--- 680,689 ----
  
  
  
! (defmacro with-slots* #-KCL(&whole whole slots instance &body body
! 				   &environment env)
! 		      #+KCL(&whole whole &environment env
! 				   slots instance &body body)
    (let ((gensym (gensym)))
      (expand-with-slots* whole
  			(mapcar #'(lambda (ss)
***************
*** 694,702 ****
  			instance
  			#'(lambda (s) `(slot-value ,gensym ',s)))))
  
! (defmacro with-accessors* (&whole whole
! 				  slot-accessor-pairs instance &body body
! 			   &environment env)
    (let ((gensym (gensym)))
      (expand-with-slots* whole
  			slot-accessor-pairs
--- 695,705 ----
  			instance
  			#'(lambda (s) `(slot-value ,gensym ',s)))))
  
! (defmacro with-accessors* #-KCL(&whole whole
! 				       slot-accessor-pairs instance &body body
! 				       &environment env)
! 			  #+KCL(&whole whole &environment env
! 				       slot-accessor-pairs instance &body body)
    (let ((gensym (gensym)))
      (expand-with-slots* whole
  			slot-accessor-pairs
***************