diff options
-rw-r--r-- | tail-recursion.lisp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tail-recursion.lisp b/tail-recursion.lisp index 8381345..9bdf0b3 100644 --- a/tail-recursion.lisp +++ b/tail-recursion.lisp @@ -163,7 +163,7 @@ (dolist (pfunc pseudo-funcs) (destructuring-bind (name vars &rest forms) pfunc (push `(label ,name ,@vars) argtags-forms) - (push `(return ,@forms) argtags-forms) + (push `(return (progn ,@forms)) argtags-forms) (push `(,name (&rest args) `(goto ,',name ,@args)) macrolet-elems))) `(macrolet ,(reverse macrolet-elems) (let ,let-bindings |