-
Notifications
You must be signed in to change notification settings - Fork 5
No longer generate extra atoms to compare generic types #655
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
Conversation
* This fixes the 0 atoms affected root cause in test root_cause.c
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.
One more quick thing I noticed
Co-authored-by: Aaron Eline <[email protected]>
This should be ready for review again, I believe I've addressed all the comments above. Let me know if there are still changes requested or if I'm good to merge. |
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.
Just a nit.
Co-authored-by: Matt McCutchen (Correct Computation) <[email protected]>
@aaronjeline I believe you still have an outstanding request for changes. Was there something else you asked me to do here or are we good to merge? |
Good to merge |
Originally, to compare function outputs with other constraints, we used the function's CV, which may have been generic. This made comparisons tricky, so extra atoms were added to fill out the type, but it resulted in over-constrained, no-longer-generic functions.
Now we use the type variable data already being collected to determine function output in a context-sensitive way. Most of this PR is about propagating that existing type variable information to other parts of the code-base.