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

Bug in KCL???

AKCL (Austin Kyoto Common Lisp)  Version(1.530) Fri Feb  1 17:07:42 EST 1991
Contains Enhancements by W. Schelter

I think I have found a bug in macrolet.  Here is some example code:

(defvar *foo* (make-array '(2 2) :initial-element 0))

(defmacro bar (a &body body)
  `(let ((rows (array-dimension ,a 0))
	 (cols (array-dimension ,a 1)))
     (macrolet ((self () (list 'aref ,a 'row 'col)))
	       (dotimes (row rows)
		 (dotimes (col cols)
		   (let ((selfv (self)))

#|(defun test ()
  (bar *foo* (incf (self))))

;;; Simplest case of macrolet dying!!
(macrolet ((self () `(aref *foo* 0 1)))
	  (incf (self)))


I have tried these same examples in lucid common lisp on a dec5000
which produced the correct answers.  Do the newer versions of kcl fix
this bug???


 -- Prof. David Chelberg (dmc@ecn.purdue.edu)