X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/eb9b8ff6af3e5339e6c051b7be13be76a52f22f4..f16a3d523afc1a0c6bf7095f5f755ca16f8419d0:/doc/misc/cl.texi diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi index 0490cf639a..2e3dd7434e 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