summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <code@mail.matthias.benkard.de>2013-07-15 15:56:48 +0200
committerMatthias Andreas Benkard <code@mail.matthias.benkard.de>2013-07-15 15:57:36 +0200
commit1113e380c5679a45db6f72b2a2f09cbbc3d1dd18 (patch)
tree89050a241ef45fb8ad46d88bd51afd8da164696d
parentba4403aa5be2a280ee67842d71753933ed8e1be0 (diff)
LAMBDA: Bail out on complex lambda lists.
-rw-r--r--sb-eval2.lisp2
1 files changed, 2 insertions, 0 deletions
diff --git a/sb-eval2.lisp b/sb-eval2.lisp
index 3d075f7..52568e0 100644
--- a/sb-eval2.lisp
+++ b/sb-eval2.lisp
@@ -249,6 +249,8 @@
(multiple-value-bind (required optional restp rest keyp keys allowp auxp aux
morep more-context more-count)
(sb-int:parse-lambda-list lambda-list)
+ (when (or optional restp keyp allowp auxp morep)
+ (return-from prepare-lambda (lambda (env) (lambda (&rest args) (error "NYI")))))
(if (< n 20)
(specialize m% n (loop for i from 0 below 20 collect i)
(let ((args (loop for i from 0 below m%