Skip to content

Fix #5578: Refine matches condition #5622

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

Merged
merged 6 commits into from
Jan 6, 2019
Merged

Conversation

odersky
Copy link
Contributor

@odersky odersky commented Dec 16, 2018

matches incorrectly returned a match if two members
differed only in their type parameters.

`matches` incorrectly returned a match if two members
differed only in their type parameters.
 - avoid forcing denotation's info in `matches`
 - deal with overloaded alternatives in assignType for TypeApply
@odersky
Copy link
Contributor Author

odersky commented Dec 16, 2018

This also fixes #4840, changes the outcome of the #4819 tests and aligns them with scalac.

@smarter is #4829 still needed, or should we revert it?

We might now get more overloaded denotations than before, which only
differ in type parameters.
Disambiguation with expected PolyType has to be done not
only in the final type, but also in the function part of
the tree.
@odersky
Copy link
Contributor Author

odersky commented Dec 17, 2018

Also addresses #5445.

odersky and others added 2 commits December 17, 2018 14:09
…ations"

This partially reverts 4e695fb which is
no longer needed after this PR (scala#5622), because we no longer try to
merge in a single denotation a PolyType and a MethodType.
@smarter
Copy link
Member

smarter commented Jan 4, 2019

@smarter is #4829 still needed, or should we revert it?

It's not needed anymore indeed, I've pushed a commit to revert it.

@smarter smarter merged commit bc5e0d2 into scala:master Jan 6, 2019
@allanrenucci allanrenucci deleted the fix-#5578 branch January 6, 2019 14:15
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