We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
You can continue the conversation there. Go to discussion →
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
3.2.0, 3.2.1-RC2, 3.2.1
type →[-L <: AnyKind, +R <: AnyKind] = [_ <: L] =>> R type F = Any → Any
-- Error: ---------------------------------------------------------------------- 1 |type F = Any → Any | ^^^^^^^^^ | type → takes type parameters
Scala allows this usage, especially in the context of
trait Free[F <: ((Any → Any) → Any), A]
where
trait Free[F <: /* giant mess of equivalent type lambda */, A]
is equivalent and does compile.
The text was updated successfully, but these errors were encountered:
I'm moving this to feature-request because this was an intentional change, although it could change back again as discussed in #9090
Sorry, something went wrong.
As a question, why does the current error appear at usage and not at declaration?
You mean, why is there no error in the definition of type → ? Because it defines a type lambda which is allowed, you can also write:
type →
type F = [X] =>> (Any → Any)[X]
But the eta-expansion is not performed automatically by the compiler
No branches or pull requests
Compiler version
3.2.0, 3.2.1-RC2, 3.2.1
Minimized code
Output
Expectation
Scala allows this usage, especially in the context of
where
is equivalent and does compile.
The text was updated successfully, but these errors were encountered: