diff --git a/doc/lispref/control.texi b/doc/lispref/control.texi index 9b0d58876f8..2b882763e06 100644 --- a/doc/lispref/control.texi +++ b/doc/lispref/control.texi @@ -1550,7 +1550,7 @@ becomes the return value of the @code{cond*} construct. @subheading Non-exit clauses If a clause has only one element, or if its first element is @code{t}, a -@code{bind*} or a @code{bind-and*} clause, or if it ends with the +@code{bind*} form or a @code{bind-and*} form, or if it ends with the keyword @code{:non-exit}, then this clause never exits the @code{cond*} construct. Instead, control falls through to the next clause (if any). Except for @code{bind-and*}, the bindings made in @var{condition} for diff --git a/lisp/emacs-lisp/cond-star.el b/lisp/emacs-lisp/cond-star.el index 3bc3eff2935..cd5a7f530e1 100644 --- a/lisp/emacs-lisp/cond-star.el +++ b/lisp/emacs-lisp/cond-star.el @@ -85,11 +85,12 @@ in its body becomes the return value of the `cond*' construct. Non-exit clauses: If a clause has only one element, or if its first element is t, a -`bind*' clause or a `bind-and*' clause, then this clause never exits the -`cond*' construct. Instead, control always falls through to the next -clause (if any). Except for `bind-and*', all bindings made in CONDITION -for the BODY of the non-exit clause are passed along to the rest of the -clauses in this `cond*' construct. +`bind*' form or a `bind-and*' form, or if it ends with the keyword +`:non-exit', then this clause never exits the `cond*' construct. +Instead, control always falls through to the next clause (if any). +Except for `bind-and*', all bindings made in CONDITION for the BODY of +the non-exit clause are passed along to the rest of the clauses in this +`cond*' construct. See `match*' for documentation of the patterns for use in `match*' conditions."