diff --git a/code/list.lisp b/code/list.lisp
index 619e2549a9ffef751987e1240c13c6d8ec37a964..06848365eb5eb3f7631e816de0dac3b521d6973b 100644
--- a/code/list.lisp
+++ b/code/list.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/list.lisp,v 1.16 1993/08/25 01:13:52 ram Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/list.lisp,v 1.17 1993/08/25 01:41:24 ram Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -967,11 +967,12 @@
 
 (defun delq (item list)
   "Returns list with all elements with all elements EQ to ITEM deleted."
-  (do ((x list (cdr x))
-       (splice '()))
-      ((endp x) list)
-    (cond ((eq item (car x))
-	   (if (null splice) 
-	       (setq list (cdr x))
-	       (rplacd splice (cdr x))))
-	  (T (setq splice x)))))	; move splice along to include element
+  (let ((list list))
+    (do ((x list (cdr x))
+	 (splice '()))
+	((endp x) list)
+      (cond ((eq item (car x))
+	     (if (null splice) 
+		 (setq list (cdr x))
+		 (rplacd splice (cdr x))))
+	    (T (setq splice x))))))	; move splice along to include element