summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>2024-02-28 23:56:58 (GMT)
committerGitHub <noreply@github.com>2024-02-28 23:56:58 (GMT)
commit479ac5ce8a311c9a5830b96e972478867fcbce61 (patch)
tree99a5045381ffb02b961a5411f4fc52888c7b6696
parent3ea78fd5bc93fc339ef743e6a5dfde35f04d972e (diff)
downloadcpython-479ac5ce8a311c9a5830b96e972478867fcbce61.zip
cpython-479ac5ce8a311c9a5830b96e972478867fcbce61.tar.gz
cpython-479ac5ce8a311c9a5830b96e972478867fcbce61.tar.bz2
gh-115859: Fix test_type_inconsistency() when run multiple times (#116079)
This should fix the refleaks bots. (See https://github.com/python/cpython/pull/116062#issuecomment-1970038174 .)
-rw-r--r--Lib/test/test_capi/test_opt.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/Lib/test/test_capi/test_opt.py b/Lib/test/test_capi/test_opt.py
index e1aef21..a43726f 100644
--- a/Lib/test/test_capi/test_opt.py
+++ b/Lib/test/test_capi/test_opt.py
@@ -893,9 +893,13 @@ class TestUopsOptimization(unittest.TestCase):
self.assertIn("_COMPARE_OP_STR", uops)
def test_type_inconsistency(self):
- def testfunc(n):
- for i in range(n):
- x = _test_global + _test_global
+ ns = {}
+ exec(textwrap.dedent("""
+ def testfunc(n):
+ for i in range(n):
+ x = _test_global + _test_global
+ """), globals(), ns)
+ testfunc = ns['testfunc']
# Must be a real global else it won't be optimized to _LOAD_CONST_INLINE
global _test_global
_test_global = 0