-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Tuples created through *: do not have a Mirror.Of[T] #14127
Comments
Isn't that a duplicate of some other issues? I could swear I have seen that discussed recently. |
This seems related to #11008 maybe (not the same underlying issue, just whether we consider generic tuple types a Product) |
What should be the element names? |
Beyond 22 we do not use |
Right but if we implement |
Then we probably are missing a generalization/extension for mirrors that can handle generic tuples. |
Not sure if it deserves its own issue, but seems that |
seems that |
There was no real reason why we did not make The I'm trying to make |
|
perhaps for tupleXXL we can use as labels |
Compiler version
3.1.1-RC1
3.1.0
Minimized code
Output
Expectation
Output should be the same as:
since
The cause seems related to the fact that
*:
is an abstract class and those are excluded from being generic products. Relevant links:https://github.com/lampepfl/dotty/blob/7a473349b3fb64e7c6c9dfcfb02758f4a2e3756c/library/src/scala/Tuple.scala#L318
https://github.com/lampepfl/dotty/blob/7a473349b3fb64e7c6c9dfcfb02758f4a2e3756c/compiler/src/dotty/tools/dotc/typer/Synthesizer.scala#L233
https://github.com/lampepfl/dotty/blob/master/compiler/src/dotty/tools/dotc/transform/SymUtils.scala#L77-L88
The text was updated successfully, but these errors were encountered: