diff options
-rw-r--r-- | share/txr/stdlib/build.tl | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/share/txr/stdlib/build.tl b/share/txr/stdlib/build.tl index a5960578..41826255 100644 --- a/share/txr/stdlib/build.tl +++ b/share/txr/stdlib/build.tl @@ -33,14 +33,14 @@ (:method add (self . items) (let ((tl self.tail)) - (usr:rplacd tl (copy (cdr tl))) + (usr:rplacd tl (copy-list (cdr tl))) (set tl (last tl)) (usr:rplacd tl items) (set self.tail tl)) nil) (:method add* (self . items) - (let ((ic (copy items)) + (let ((ic (copy-list items)) (h self.head)) (usr:rplacd (last ic) (cdr h)) (usr:rplacd h ic)) @@ -49,11 +49,11 @@ (:method pend (self . lists) (let ((tl self.tail)) (while lists - (usr:rplacd tl (copy (cdr tl))) + (usr:rplacd tl (copy-list (cdr tl))) (set tl (last tl)) (let ((nx (car lists))) (usr:rplacd tl (if (tailp tl nx) - (copy nx) + (copy-list nx) nx))) (set lists (cdr lists))) (set self.tail tl)) @@ -64,12 +64,12 @@ (nh (cons nil nil)) (tl nh)) (while lists - (usr:rplacd tl (copy (cdr tl))) + (usr:rplacd tl (copy-list (cdr tl))) (set tl (last tl)) (usr:rplacd tl (car lists)) (set lists (cdr lists))) (set tl (last tl)) - (usr:rplacd tl (if (tailp tl h) (copy h) h)) + (usr:rplacd tl (if (tailp tl h) (copy-list h) h)) (set self.head nh)) nil) |