]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-45711: Re-bump the magic number and update doc (GH-29528)
authorBrandt Bucher <brandt@python.org>
Fri, 12 Nov 2021 13:21:45 +0000 (05:21 -0800)
committerGitHub <noreply@github.com>
Fri, 12 Nov 2021 13:21:45 +0000 (13:21 +0000)
Doc/library/dis.rst
Doc/whatsnew/3.11.rst
Lib/importlib/_bootstrap_external.py

index 4a804044df000afb033e94dda65b4793feb9326e..5fe9f65f46a71021e9e392458a88835b7bef0570 100644 (file)
@@ -873,10 +873,13 @@ All of the following opcodes use their arguments.
 .. opcode:: JUMP_IF_NOT_EXC_MATCH (target)
 
    Tests whether the second value on the stack is an exception matching TOS,
-   and jumps if it is not. Pops two values from the stack.
+   and jumps if it is not. Pops one value from the stack.
 
    .. versionadded:: 3.9
 
+   .. versionchanged:: 3.11
+      This opcode no longer pops the active exception.
+
 
 .. opcode:: JUMP_IF_TRUE_OR_POP (target)
 
index 59a230f26ab42b173fa73f08a38931c8ac87eee6..0767a6a03ac2a67bba9ed300b0d4ddfa5edc497c 100644 (file)
@@ -332,6 +332,8 @@ CPython bytecode changes
 * Added :opcode:`COPY`, which pushes the *i*-th item to the top of the stack.
   The item is not removed from its original location.
 
+* :opcode:`JUMP_IF_NOT_EXC_MATCH` no longer pops the active exception.
+
 
 Deprecated
 ==========
index f6f54af68488fdb553ac15cfe1c08e7d22478a6f..303ca728ec8924f35072e8d620eac8dcb1fe8af0 100644 (file)
@@ -366,7 +366,10 @@ _code_type = type(_write_atomic.__code__)
 #     Python 3.11a1 3461 (JUMP_ABSOLUTE must jump backwards)
 #     Python 3.11a2 3462 (bpo-44511: remove COPY_DICT_WITHOUT_KEYS, change
 #                         MATCH_CLASS and MATCH_KEYS, and add COPY)
-#     Python 3.11a3 3463 (Merge numeric BINARY_*/INPLACE_* into BINARY_OP)
+#     Python 3.11a3 3463 (bpo-45711: JUMP_IF_NOT_EXC_MATCH no longer pops the
+#                         active exception)
+#     Python 3.11a3 3464 (bpo-45636: Merge numeric BINARY_*/INPLACE_* into
+#                         BINARY_OP)
 
 #
 # MAGIC must change whenever the bytecode emitted by the compiler may no
@@ -376,7 +379,7 @@ _code_type = type(_write_atomic.__code__)
 # Whenever MAGIC_NUMBER is changed, the ranges in the magic_values array
 # in PC/launcher.c must also be updated.
 
-MAGIC_NUMBER = (3463).to_bytes(2, 'little') + b'\r\n'
+MAGIC_NUMBER = (3464).to_bytes(2, 'little') + b'\r\n'
 _RAW_MAGIC_NUMBER = int.from_bytes(MAGIC_NUMBER, 'little')  # For import.c
 
 _PYCACHE = '__pycache__'