summaryrefslogtreecommitdiffstats
path: root/tail-recursion.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'tail-recursion.lisp')
-rw-r--r--tail-recursion.lisp2
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