Commit f16a3d52 authored by Glenn Morris's avatar Glenn Morris

* doc/misc/cl.texi (Blocks and Exits): Mention cl-tagbody.

* etc/NEWS: Related edit.
parent eb9b8ff6
2014-02-03 Glenn Morris <rgm@gnu.org>
* cl.texi (Blocks and Exits): Mention cl-tagbody.
2014-02-02 Glenn Morris <rgm@gnu.org>
* efaq-w32.texi (Tramp ssh): Remove deleted tramp methods.
......
......@@ -1556,6 +1556,19 @@ Common Lisp loops like @code{cl-do} and @code{cl-dolist} implicitly enclose
themselves in @code{nil} blocks.
@end defmac
@c FIXME? Maybe this should be in a separate section?
@defmac cl-tagbody &rest labels-or-statements
This macro executes statements while allowing for control transfer to
user-defined labels. Each element of @var{labels-or-statements} can
be either a label (an integer or a symbol), or a cons-cell
(a statement). This distinction is made before macroexpansion.
Statements are executed in sequence, discarding any return value.
Any statement can transfer control at any time to the statements that follow
one of the labels with the special form @code{(go LABEL)}.
Labels have lexical scope and dynamic extent.
@end defmac
@node Iteration
@section Iteration
......
......@@ -424,7 +424,9 @@ For example, this enables parsing of macros that open new namespaces.
** cl-lib
+++
*** New macro `cl-tagbody'.
This executes statements while allowing for control transfer to labels.
+++
*** letf is now just an alias for cl-letf.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment