summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/test_compile.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/Lib/test/test_compile.py b/Lib/test/test_compile.py
index 784c055..85ce0a4 100644
--- a/Lib/test/test_compile.py
+++ b/Lib/test/test_compile.py
@@ -1186,6 +1186,15 @@ class TestSpecifics(unittest.TestCase):
return a
self.assertEqual(f("x", "y", "z"), "y")
+ def test_variable_dependent(self):
+ # gh-104635: Since the value of b is dependent on the value of a
+ # the first STORE_FAST for a should not be skipped. (e.g POP_TOP).
+ # This test case is added to prevent potential regression from aggressive optimization.
+ def f():
+ a = 42; b = a + 54; a = 54
+ return a, b
+ self.assertEqual(f(), (54, 96))
+
@requires_debug_ranges()
class TestSourcePositions(unittest.TestCase):