-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Force consistent MT post-redux normalisation, disallow infinite match types #18073
Conversation
Thank you for working on this. Personally, I think trading unbounded recursion in match types for match types composing with implicit/given resolution is a trade I would always make. If you really want an infinite recursion in the types, you could still do so with a class or trait. |
I gave match type's redux an extension to the normalize algorithm, in order to make the test suite pass, as well as add an extra recursion to the simplify algorithm. A few neg tests tweaked and some other code changes could be dropped.
Ugh, now this is failing against the perspective community project, needing the fix in #18043... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After discussions I now see that the rejections infinite match types are fine.
I propose to change normalized
back to simplified
and merge the PR like that.
This PR also caused the regression: #18261 |
Fixes #16596