-
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
Regression 3.4.0+: scenario where Tuple.InverseMap does not compute the expected type #20538
Comments
Compiles in 3.3.3. Could perhaps be related to #17222? |
Regression happens in 3.4.0-RC1-bin-20231218-ec2b8bc-NIGHTLY:
|
Minimized to: trait A:
type T
type U = T
trait B extends A:
type T = String
object C extends B
type F[X] = A { type U = X } // works when `U` is replaced with `T`
type InvF[Y] = Y match
case F[x] => x
object Test:
summon[InvF[C.type] =:= String] // ok
summon[InvF[B] =:= String] // error: selector B does not uniquely determine parameter x although I'm not 100% sure this an incorrect error. |
After investigating #17222, these two issues are probably unrelated |
This issue is fixed by #20161: adding Adding the import does not fix #17222. @smarter would you have any insights on when the amendment will be stabilized? Should I just add regression tests and mark this issue as solved? |
It needs a minor release so it should be in 3.6.0 |
Wonderful, so this means these examples will compile just fine in 3.6! I suggest we add regressions tests with |
IIRC tests usually have scala-cli directives for experimental options but sounds fine to me either way |
Compiler version
3.4.0 and higher
Minimized code
Output
Expectation
Successful compilation.
The text was updated successfully, but these errors were encountered: