summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--control-flow.lisp6
1 files changed, 5 insertions, 1 deletions
diff --git a/control-flow.lisp b/control-flow.lisp
index b2c9953..a52b691 100644
--- a/control-flow.lisp
+++ b/control-flow.lisp
@@ -19,7 +19,8 @@
(in-package #:common-lisp)
(export '(identity constantly complement tagbody go block return-from
- defconstant prog prog* macrolet flet prog1 prog2 labels))
+ return defconstant prog prog* macrolet flet prog1 prog2
+ labels))
(defun identity (x)
@@ -82,6 +83,9 @@
:test 'eq))
,value))
+(defmacro return (&optional value)
+ `(return-from nil ,value))
+
;; FIXME: Should be (EVAL-WHEN (:compile-toplevel) ...).
(unless (boundp '+go-tag-function-mapping-sym+)