Closed
Description
Bug report
Bug description:
Consider
def testfunc(loops):
for _ in range(loops):
a = 1
a + a
a + a
change_a()
a + a
and suppose that change_a
manages to change the value of the local a
to "a"
.
Specialization will have converted the subsequent a + a
to integer addition, and type propagation will have stripped the guard, resulting in a crash.
This is incredibly unlikely, and very hard to come up with a test for but it is theoretically possible.
It may be become more likely (and easier to test for) if PEP 667 is accepted.
Linked PRs
Metadata
Metadata
Assignees
Labels
Projects
Status
Done