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):