summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <code@mail.matthias.benkard.de>2013-07-19 23:34:59 +0200
committerMatthias Andreas Benkard <code@mail.matthias.benkard.de>2013-07-19 23:34:59 +0200
commit8ae8ada506ac3bec2831ee7ab9a7f9e75e2c738e (patch)
tree8b01ffb8ed3056b7684dc12ae8aaba8c4fe80c6a
parent5c967f09225719e5b2eef5f3c8e4255ef1a4c88a (diff)
LAMBDA: Simplify, (DECLARE (DYNAMIC-EXTENT ARGS)).
-rw-r--r--sb-eval2.lisp9
1 files changed, 4 insertions, 5 deletions
diff --git a/sb-eval2.lisp b/sb-eval2.lisp
index 9c76095..6b1906c 100644
--- a/sb-eval2.lisp
+++ b/sb-eval2.lisp
@@ -484,6 +484,7 @@
(declare (special *new-env*))
(flet
((handle-arguments (&rest args)
+ (declare (dynamic-extent args))
;; All this ELT and LENGTH stuff is not as
;; inefficient as it looks. SBCL transforms
;; &rest into &more here.
@@ -516,11 +517,9 @@
(dolist (value values)
(let ((varspec (pop my-varspecs)))
(if (eq varspec :lexical)
- (progn
- (setf
- (environment-value *new-env* 0 vari)
- value)
- (incf vari))
+ (setf
+ (environment-value *new-env* 0 (incff vari))
+ value)
(progn
(assert (eq :special
(car varspec))