From 213c0fcfc06d349b15ebebcb1cf34fd9c064034b Mon Sep 17 00:00:00 2001 From: Bertrand BRUN Date: Mon, 1 Nov 2010 19:09:08 +0100 Subject: [PATCH] Correction d'une recursion infini dans le let* --- implementation/divers.lisp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/implementation/divers.lisp b/implementation/divers.lisp index f8c0f48..3e0261b 100644 --- a/implementation/divers.lisp +++ b/implementation/divers.lisp @@ -106,9 +106,11 @@ ,(mapcar #'cdar bindings))) (defmacro let* (bindings &rest body) - `(let (,(car bindings)) - (let* ,(cdr bindings) - ,body))) + (if (endp bindings) + body + `(let (,(car bindings)) + (let* ,(cdr bindings) + ,body)))) (defmacro labels (f-bindings &rest body) ;; TODO