Skip to content

MirroredMonoType for curried type lambda has wrong kind #14025

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

Closed
bishabosha opened this issue Dec 2, 2021 · 1 comment · Fixed by #15006
Closed

MirroredMonoType for curried type lambda has wrong kind #14025

bishabosha opened this issue Dec 2, 2021 · 1 comment · Fixed by #15006
Assignees
Milestone

Comments

@bishabosha
Copy link
Member

bishabosha commented Dec 2, 2021

Compiler version

3.1.0

Minimized code

summon[deriving.Mirror.Product { type MirroredType = [X] =>> [Y] =>> (X, Y) }]

Output

1 |summon[deriving.Mirror.Product { type MirroredType = [X] =>> [Y] =>> (X, Y) }]
  |                                                                              ^
  |error overriding type MirroredMonoType in trait Mirror with bounds;
  |  type MirroredMonoType, which equals [Y] =>> (?, Y) has incompatible type

Expectation

MirroredMonoType should be collapsed to (?, ?), rather than [Y] =>> (?, Y)

@odersky
Copy link
Contributor

odersky commented Dec 6, 2021

Not clear why this should change. Maybe simply not support it?

bishabosha added a commit to dotty-staging/dotty that referenced this issue Apr 22, 2022
bishabosha added a commit to dotty-staging/dotty that referenced this issue Apr 22, 2022
bishabosha added a commit to dotty-staging/dotty that referenced this issue May 5, 2022
bishabosha added a commit to dotty-staging/dotty that referenced this issue Oct 18, 2022
@Kordyjan Kordyjan added this to the 3.2.0 milestone Aug 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants