You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix apparent nondeterminism in pattern matching compilation. (#7557)
Fixes#7465
Pattern matching compilation has some code to find if some exit is used at least 3 times. This is done by iterating on a hash table.
However, the exit id is generated based on a global counter, which determines which exit value `n` is generated. This can affect the order in which the hash table is traversed, as the exit id is hashed.
This PR makes the code generation deterministic by adding a tie-breaker if more than id leads to the same exit being used at least 3 times: take the smaller id.
0 commit comments