Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Backport "Streamline tryNormalize with underlyingMatchType" to 3.5.2 #21449

Merged
merged 10 commits into from
Aug 27, 2024

Conversation

WojciechMazur
Copy link
Contributor

Backports #20268 to the 3.5.2 branch.

PR submitted by the release tooling.
[skip ci]

Delay their normalization until it is needed.
Avoids overflows from infinite match types that did not need to normalize.
Also improves MatchTypeTraces as a side effect.

It appears to have been added to avoid some separate issue, which seems to have been fixed.
It is no longer needed since the previous fix with constant folding in disjointnessBoundary.

[Cherry-picked 32752e2]
Also fixes underlyingMatchType to not use the resType of HKTypeLambdas
It should only be in `isMatch` used for `AliasingBounds`, not `isMatchAlias`

[Cherry-picked ac98023]
There is already a `handleRecursive` in `reduced`
Having the two makes error messages undeterministic, see #20269

[Cherry-picked 309b1cf]
tryNormalize used to not recursively check if tycon of applied type was normalizable,
this may be necessary in the case of an applied type dealiasing to a type lambda.

Fixes #20482

[Cherry-picked 9465d65]
an omission from ef7db7a

[Cherry-picked 1bfa819]
Base automatically changed from 3.5.x-21001 to 3.5.x August 27, 2024 22:05
@WojciechMazur WojciechMazur merged commit 6d7abfc into 3.5.x Aug 27, 2024
29 of 42 checks passed
@WojciechMazur WojciechMazur deleted the 3.5.x-20268 branch August 27, 2024 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants