emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master d9dabcacefa: ; Minor copyedits of doc of 'handler-bind'


From: Eli Zaretskii
Subject: master d9dabcacefa: ; Minor copyedits of doc of 'handler-bind'
Date: Sat, 6 Jan 2024 05:45:11 -0500 (EST)

branch: master
commit d9dabcacefad084cccaa32e4f5fffcb78728fa00
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>

    ; Minor copyedits of doc of 'handler-bind'
    
    * doc/lispref/control.texi (Handling Errors): Fix wording and
    punctuation.
---
 doc/lispref/control.texi | 29 +++++++++++++++--------------
 1 file changed, 15 insertions(+), 14 deletions(-)

diff --git a/doc/lispref/control.texi b/doc/lispref/control.texi
index 3c9f26262c1..0c6895332a0 100644
--- a/doc/lispref/control.texi
+++ b/doc/lispref/control.texi
@@ -2325,16 +2325,17 @@ error description.
 
 Contrary to what happens with @code{condition-case}, @var{handler} is
 called in the dynamic context where the error happened.  This means it
-is executed unbinding any variable bindings or running any cleanups of
-@code{unwind-protect}, so that all those dynamic bindings are still in
-effect.  There is one exception: while running the @var{handler}
-function, all the error handlers between the code that signaled the
-error and the @code{handler-bind} are temporarily suspended, meaning
-that when an error is signaled, Emacs will only search the active
-@code{condition-case} and @code{handler-bind} forms that are inside
-the @var{handler} function or outside of the current
-@code{handler-bind}.  Note also that lexical variables are not
-affected, since they do not have dynamic extent.
+is executed without unbinding any variable bindings or running any
+cleanups of @code{unwind-protect}, so that all those dynamic bindings
+are still in effect.  There is one exception: while running the
+@var{handler} function, all the error handlers between the code that
+signaled the error and the @code{handler-bind} are temporarily
+suspended, meaning that when an error is signaled, Emacs will only
+search the active @code{condition-case} and @code{handler-bind} forms
+that are inside the @var{handler} function or outside of the current
+@code{handler-bind}.  Note also that lexically-bound variables
+(@pxref{Lexical Binding}) are not affected, since they do not have
+dynamic extent.
 
 Like any normal function, @var{handler} can exit non-locally,
 typically via @code{throw}, or it can return normally.
@@ -2391,10 +2392,10 @@ We can get almost the same result with 
@code{condition-case}:
 
 @noindent
 but with the difference that when we (re)signal the new error in
-@code{handler-bind} the dynamic environment from the original error is
-still active, which means for example that if we enter the
-debugger at this point, it will show us a complete backtrace including
-the point where we signaled the original error:
+@code{handler-bind}, the dynamic environment from the original error
+is still active, which means for example that if we enter the debugger
+at this point, it will show us a complete backtrace including the
+point where we signaled the original error:
 
 @example
 @group



reply via email to

[Prev in Thread] Current Thread [Next in Thread]