(slow (cons (car list) (cdr list)) (cdr slow))
,@(when step (list step)))
(nil)
- (declare (dynamic-extent slow) ,@(when declare (list declare)))
+ (declare (dynamic-extent slow) ,@(when declare (list declare))
+ (ignorable last))
(when (safe-endp fast)
(return ,ret1))
(when (safe-endp (cdr fast))
;; KLUDGE: Most implementations don't actually support lists with bignum
;; elements -- and this is WAY faster on most implementations then declaring
;; N to be an UNSIGNED-BYTE.
- (fixnum n)
+ (fixnum n)
(1- n)
n)
-
+
(def lastcar (list)
"Returns the last element of LIST. Signals a type-error if LIST is not a
proper list."
nil
(cadr last)
(car fast))
-
+
(def (setf lastcar) (object list)
"Sets the last element of LIST. Signals a type-error if LIST is not a proper
list."