diff options
author | Martin Odersky <odersky@gmail.com> | 2016-06-26 16:57:38 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2016-07-11 13:35:04 +0200 |
commit | 8805dd4f821e06a688fcf492b61033fe0992e752 (patch) | |
tree | 47da644d5eba1c2c536183ef1e396d2333af59c6 /.gitignore | |
parent | de5d8fe696cdf7acfa80991ceae322aedb1dfd20 (diff) | |
download | dotty-8805dd4f821e06a688fcf492b61033fe0992e752.tar.gz dotty-8805dd4f821e06a688fcf492b61033fe0992e752.tar.bz2 dotty-8805dd4f821e06a688fcf492b61033fe0992e752.zip |
When comparing types revert eta-expansion as needed
The problem is that some existential types read from Java (and Scala
as well? not sure) appear as naked typerefs. They consequently get
expanded via eta expansion to type lambdas. This commit compensates for
this by collapsing an eta expansion if this can make a subtype tests succeed
or a union or intersection be legal.
Also, take hk types into account for liftToClasses
Needs to special-treat TypeLambda and HKApply since otherwise
we risk creating malformed And-types.
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions