Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
inference: follow up JuliaLang#54323, override ssaflags with new cycl…
…e effects (JuliaLang#54689) JuliaLang#54323 ensures that all frames within a cycle have the same, cycle valid effects. However, `src.ssaflags` is calculated using partial effects, so when the effects of a `frame` within the cycle are updated, there would be an inconsistency between `frame.ipo_effects` and `frame.src.ssaflags`. Due to this inconsistency, JuliaLang#54323 breaks the test cases from JuliaLang#51092, when backported to v1.11. On the surface this is because JuliaLang#52999 hasn't been backported to v1.11, but the fundamental issue lies in this inconsistency between cycle effects and `ssaflags`. To resolve this issue, this commit traverses `cycle_backedges` to visit statements involved in the cycle, and updates each `ssaflags` according to new cycle valid effects if necessary.
- Loading branch information