[Python-checkins] GH-94851: fix immortal objects refcounting in compiler (gh-95040)

miss-islington webhook-mailer at python.org
Wed Jul 20 06:42:14 EDT 2022


https://github.com/python/cpython/commit/16cb8ca52e404ceadbbbad4c5af498e76feefa1c
commit: 16cb8ca52e404ceadbbbad4c5af498e76feefa1c
branch: 3.11
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2022-07-20T03:42:05-07:00
summary:

GH-94851: fix immortal objects refcounting in compiler (gh-95040)

(cherry picked from commit 74761548862eb5a324c23d86a6233d884f386f2e)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303 at users.noreply.github.com>

files:
M Python/compile.c

diff --git a/Python/compile.c b/Python/compile.c
index 42f3730e220f5..3fe0930e7aebf 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -4912,7 +4912,7 @@ compiler_joined_str(struct compiler *c, expr_ty e)
     Py_ssize_t value_count = asdl_seq_LEN(e->v.JoinedStr.values);
     if (value_count > STACK_USE_GUIDELINE) {
         _Py_DECLARE_STR(empty, "");
-        ADDOP_LOAD_CONST_NEW(c, &_Py_STR(empty));
+        ADDOP_LOAD_CONST_NEW(c, Py_NewRef(&_Py_STR(empty)));
         ADDOP_NAME(c, LOAD_METHOD, &_Py_ID(join), names);
         ADDOP_I(c, BUILD_LIST, 0);
         for (Py_ssize_t i = 0; i < asdl_seq_LEN(e->v.JoinedStr.values); i++) {



More information about the Python-checkins mailing list