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

Re: May Day PCL bugs affecting instances of redefined classes



There is a mistake in one of the changes to PCL given
in the message:
> Date: Thu, 28 Jun 90 19:20:17 EDT
> From: harrisr@turing.cs.rpi.edu (Richard Harris)
> Message-Id: <9006282320.AA25016@turing.cs.rpi.edu>
> To: commonloops.pa@Xerox.COM
> Subject: May Day PCL bugs affecting instances of redefined classes
> 
> Here are some bugs in May Day PCL I have found while
> redefining classes which have existing instances.
> 
If you made the changes in that message, change line-valid-p to be:
	  ;;
	  ;; Given a line number, return true IFF the line is full and
	  ;; there are no invalid wrappers in the line, and the line's
	  ;; wrappers are different from wrappers.
	  ;; An error is signalled if the line is reserved.
	  ;;
	  (line-valid-p (line wrappers)
	    (when (line-reserved-p line) (error "Line is reserved."))
	    (let ((loc (line-location line))
		  (wrappers-mismatch-p (null wrappers)))
	      (dotimes (i (nkeys) wrappers-mismatch-p)
		(let ((wrapper (cache-ref (cache) (+ loc i))))
		  (when (or (null wrapper)
			    (invalid-wrapper-p wrapper))
		    (return nil))
		  (unless (and wrappers
			       (eq wrapper
				   (if (consp wrappers) (pop wrappers) wrappers)))
		    (setq wrappers-mismatch-p t))))))


 -----
 Richard Harris