summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorNoam Postavsky <npostavs@gmail.com>2018-03-08 18:48:39 -0500
committerNoam Postavsky <npostavs@gmail.com>2018-03-10 17:56:04 -0500
commite244fed5e041c706dd10c60bd893634902f04aaa (patch)
tree84682c4634a9397fcf48296e71ee59217bb7dfe7 /lisp/emacs-lisp
parentdf0e7e2b9e98e45353d3555448cb0f7d5a20a00d (diff)
downloademacs-e244fed5e041c706dd10c60bd893634902f04aaa.tar.gz
emacs-e244fed5e041c706dd10c60bd893634902f04aaa.tar.bz2
emacs-e244fed5e041c706dd10c60bd893634902f04aaa.zip
Clarify that nil doesn't match itself as a cl-case clause (Bug#30749)
* lisp/emacs-lisp/cl-macs.el (cl-case): Mention that the ATOM => (ATOM) short form is only for non-nil ATOMs.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/cl-macs.el16
1 files changed, 9 insertions, 7 deletions
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index e7f82ced488..971f4f926bd 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -761,13 +761,15 @@ The result of the body appears to the compiler as a quoted constant."
;;;###autoload
(defmacro cl-case (expr &rest clauses)
"Eval EXPR and choose among clauses on that value.
-Each clause looks like (KEYLIST BODY...). EXPR is evaluated and compared
-against each key in each KEYLIST; the corresponding BODY is evaluated.
-If no clause succeeds, cl-case returns nil. A single atom may be used in
-place of a KEYLIST of one atom. A KEYLIST of t or `otherwise' is
-allowed only in the final clause, and matches if no other keys match.
-Key values are compared by `eql'.
-\n(fn EXPR (KEYLIST BODY...)...)"
+Each clause looks like (KEYLIST BODY...). EXPR is evaluated and
+compared against each key in each KEYLIST; the corresponding BODY
+is evaluated. If no clause succeeds, cl-case returns nil. A
+single non-nil atom may be used in place of a KEYLIST of one
+atom. A KEYLIST of t or `otherwise' is allowed only in the final
+clause, and matches if no other keys match. Key values are
+compared by `eql'.
+
+\(fn EXPR (KEYLIST BODY...)...)"
(declare (indent 1) (debug (form &rest (sexp body))))
(macroexp-let2 macroexp-copyable-p temp expr
(let* ((head-list nil))