Define subtyping of unions with type difference#566
Draft
erszcz wants to merge 27 commits intojosefs:masterfrom
Draft
Define subtyping of unions with type difference#566erszcz wants to merge 27 commits intojosefs:masterfrom
erszcz wants to merge 27 commits intojosefs:masterfrom
Conversation
Collaborator
|
Impressive, thanks for trying it out! It breaks when |
Sadly, this doesn't work, as init_per_suite/1 is called after all/0, so a suite with all/0 not returning any tests is not run :(
…nfo_pass.erl This is necessary to avoid a problem with the test module name being used as a generated test name, which is a function name. It lead to a name clash with preexisting module_info/1, which is defined for every module.
This solves the problem captured in test/known_problems/should_pass/different_normalization_levels.erl but leads to a lot of other test failures.
bcf8fea to
4f1468f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This borrows the idea of defining the subtyping relation from set-theoretic types, but we only use it for subtyping of unions. This issue was made clearly visible in @xxdavid's #564 and we spoke about it face to face on Lambda Days earlier this week.
However, there are some basic tests which stopped passing, like
test/should_pass/guard.erlorlookup/2inpoly_should_pass.erl, so it needs more investigation. The main troublemaker,different_normalization_levels.erl, works now, though.