Ticket #593: ccl-fix-slot-location-assignment.patch

File ccl-fix-slot-location-assignment.patch, 0.6 KB (added by xxxxxx, 3 years ago)

Working patch this time?

  • l1-clos.lisp

     
    255255        (extract-instance-and-class-slotds (call-next-method)) 
    256256      (setq instance-slots (sort-effective-instance-slotds instance-slots class cpl)) 
    257257      (do* ((loc 1 (1+ loc)) 
    258             (islotds instance-slots (cdr islotds))) 
     258            (islotds (remove-if-not (lambda (x) (eq :instance (%slot-definition-allocation x)))  instance-slots) (cdr islotds))) 
    259259           ((null islotds)) 
    260260        (declare (fixnum loc)) 
    261261        (setf (%slot-definition-location (car islotds)) loc))