X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Feval.lisp;h=f09a9c3015facf235cd17e5879c3579511e31258;hb=72db452798256d266d5909bd330d9eb5b31c6f1e;hp=8e67686f8fb0c07537472e47c82b8074a50ce76e;hpb=25d4ea4f108159b9782f21212374a1631cfe9a56;p=sbcl.git diff --git a/src/code/eval.lisp b/src/code/eval.lisp index 8e67686..f09a9c3 100644 --- a/src/code/eval.lisp +++ b/src/code/eval.lisp @@ -225,6 +225,12 @@ (values sb!c:*lexenv* vars)) :eval)) (eval-locally `(locally ,@body) lexenv :vars vars)))) + ((if) + (destructuring-bind (test then &optional else) (rest exp) + (eval-in-lexenv (if (eval-in-lexenv test lexenv) + then + else) + lexenv))) (t (if (and (symbolp name) (eq (info :function :kind name) :function))