28 Nov 2009 10:18
unfold-circular-list
Willem Broekema <metawilm <at> gmail.com>
2009-11-28 09:18:23 GMT
2009-11-28 09:18:23 GMT
There's a bug in unfold-circular-list, in that it calls subseq on a
circular list: subseq is defined as taking a "proper sequence". Below
is a patch.
- Willem
diff --git a/parse.lisp b/parse.lisp
index 4ee75b9..ab711b9 100644
--- a/parse.lisp
+++ b/parse.lisp
<at> <at> -46,7 +46,7 <at> <at>
(loop for x on list as i upfrom 0
as cdr-index = (find-cdr list (cdr x) i)
until cdr-index
- finally (return (values (subseq list 0 (1+ i))
+ finally (return (values (loop repeat (1+ i) collect (pop list))
cdr-index)))))
(defun symbol-package-fix-cl (symbol)
RSS Feed