Merge from origin/emacs-26

5c91ca8 Fix create_process bug breaking eudc-expand-inline
e244fed Clarify that nil doesn't match itself as a cl-case clause (Bu...
df0e7e2 Improve SVG documentation
a34ef52 Document the "URL" keyword in library headers
fbc7f9a * test/lisp/international/mule-tests.el: Avoid local variable...
16faff6 ; * lisp/org/org-table.el: Replace obsolete alias in comment.
This commit is contained in:
Paul Eggert 2018-03-10 18:30:54 -08:00
commit a3f26048a9
6 changed files with 21 additions and 16 deletions

View file

@ -771,13 +771,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))