emacs/doc
Stefan Monnier a4efbe4c49 New special form handler-bind
AFAIK, this provides the same semantics as Common Lisp's `handler-bind`,
modulo the differences about how error objects and conditions are
represented.

* lisp/subr.el (handler-bind): New macro.

* src/eval.c (pop_handler): New function.
(Fhandler_Bind_1): New function.
(signal_or_quit): Handle new handlertypes `HANDLER` and `SKIP_CONDITIONS`.
(find_handler_clause): Simplify.
(syms_of_eval): Defsubr `Fhandler_bind_1`.

* doc/lispref/control.texi (Handling Errors): Add `handler-bind`.

* test/src/eval-tests.el (eval-tests--handler-bind): New test.

* lisp/emacs-lisp/lisp-mode.el (lisp-font-lock-keywords):
Move 'handler-bind' from CL-only to generic Lisp.
(handler-bind): Remove indentation setting, it now lives in the macro
definition.
2023-12-27 23:45:51 -05:00
..
emacs ; Improve and correct documentation of registers (bug#66394) 2023-12-23 12:46:55 +02:00
lispintro Add explanation for extra parentheses in ELisp Introduction 2023-12-23 11:35:33 +02:00
lispref New special form handler-bind 2023-12-27 23:45:51 -05:00
man Merge from origin/emacs-29 2023-12-23 06:30:40 -05:00
misc ; * doc/misc/eglot.texi (Performance): Fix a typo. 2023-12-27 18:42:41 +02:00