diff options
author | Glenn Morris <rgm@gnu.org> | 2014-02-02 18:58:13 -0800 |
---|---|---|
committer | Glenn Morris <rgm@gnu.org> | 2014-02-02 18:58:13 -0800 |
commit | f16a3d523afc1a0c6bf7095f5f755ca16f8419d0 (patch) | |
tree | 2609415c9014401a789cb9b106f7d9248caa3f81 /doc/misc/cl.texi | |
parent | eb9b8ff6af3e5339e6c051b7be13be76a52f22f4 (diff) | |
download | emacs-f16a3d523afc1a0c6bf7095f5f755ca16f8419d0.tar.gz |
* doc/misc/cl.texi (Blocks and Exits): Mention cl-tagbody.
* etc/NEWS: Related edit.
Diffstat (limited to 'doc/misc/cl.texi')
-rw-r--r-- | doc/misc/cl.texi | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi index 0490cf639ac..2e3dd7434e0 100644 --- a/doc/misc/cl.texi +++ b/doc/misc/cl.texi @@ -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 |