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
Freeze constraints while calculating GADT full bounds (#18222)
While studying a bug, I discovered that the code I'd written to avoid
bidirectionalily in GADT fullBounds was inadvertently recording GADT
constraints, assisted by the fact that, when running without
-Yno-deep-subtypes, TypeComparer's escape hatch for deep recursions
avoids it crashing. For instance a GADT symbol was compared >: Nothing
and thus recorded as having Nothing as a lower bound.
So I added freezing, and while I was at it I updated the docs I hadn't
changed last time, and I made the subtyping check in the only direction
necessary.
0 commit comments