From c118c2455c95baea08045dc64963600b7a56b6fd Mon Sep 17 00:00:00 2001 From: zq1997 Date: Tue, 18 Jan 2022 01:45:44 +0800 Subject: bpo-46161: Fix bug in starunpack_helper in compile.c (GH-30235) --- Python/compile.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'Python/compile.c') diff --git a/Python/compile.c b/Python/compile.c index b2702da8707..86f888ef8a3 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -4233,7 +4233,7 @@ starunpack_helper(struct compiler *c, asdl_expr_seq *elts, int pushed, Py_INCREF(val); PyTuple_SET_ITEM(folded, i, val); } - if (tuple) { + if (tuple && !pushed) { ADDOP_LOAD_CONST_NEW(c, folded); } else { if (add == SET_ADD) { @@ -4245,6 +4245,9 @@ starunpack_helper(struct compiler *c, asdl_expr_seq *elts, int pushed, ADDOP_I(c, build, pushed); ADDOP_LOAD_CONST_NEW(c, folded); ADDOP_I(c, extend, 1); + if (tuple) { + ADDOP(c, LIST_TO_TUPLE); + } } return 1; } -- cgit v1.2.3