From: Roberto Hueso Date: Tue, 4 May 2021 12:36:01 +0000 (+0200) Subject: bpo-32822: Add finally with return/break/continue to the tutorial (#25600) X-Git-Tag: v3.11.0a1~1210 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a0b9915a8be98427432e13d8eb2207a8b9824179;p=thirdparty%2FPython%2Fcpython.git bpo-32822: Add finally with return/break/continue to the tutorial (#25600) This documents in the tutorial docs the behavior of a finally clause in case it should re-raise an exception but contains a return/break/continue statement. --- diff --git a/Doc/tutorial/errors.rst b/Doc/tutorial/errors.rst index 25bb4fc567b9..cd5fc878f9c9 100644 --- a/Doc/tutorial/errors.rst +++ b/Doc/tutorial/errors.rst @@ -405,6 +405,10 @@ points discuss more complex cases when an exception occurs: or :keyword:`!else` clause. Again, the exception is re-raised after the :keyword:`!finally` clause has been executed. +* If the :keyword:`!finally` clause executes a :keyword:`break`, + :keyword:`continue` or :keyword:`return` statement, exceptions are not + re-raised. + * If the :keyword:`!try` statement reaches a :keyword:`break`, :keyword:`continue` or :keyword:`return` statement, the :keyword:`!finally` clause will execute just prior to the diff --git a/Misc/ACKS b/Misc/ACKS index fb84c00622c3..9f861b374221 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -778,6 +778,7 @@ Christian Hudon Benoît Hudson Lawrence Hudson Michael Hudson +Roberto Hueso Gomez Jim Hugunin Greg Humphreys Chris Hunt