We need to make progress on the translation of context bounds. A context bound currently translates to an implicit evidence parameter, but it should be a using clause. The best way to change this would be.
-
A deprecation phase, where we warn when an implicit parameter stemming from a context bound is instantiated with an explicitly passed, plain (non-using) argument. We should also have an option to rewrite this automatically.
-
After that, a change to the new behavior.
To make the deprecation phase compatible with the need to cross compile with Scala 2, we need to change the Scala 2 compiler to accept using clauses. See #15549 (comment) for similar changes.
We need to make progress on the translation of context bounds. A context bound currently translates to an implicit evidence parameter, but it should be a using clause. The best way to change this would be.
A deprecation phase, where we warn when an implicit parameter stemming from a context bound is instantiated with an explicitly passed, plain (non-using) argument. We should also have an option to rewrite this automatically.
After that, a change to the new behavior.
To make the deprecation phase compatible with the need to cross compile with Scala 2, we need to change the Scala 2 compiler to accept
usingclauses. See #15549 (comment) for similar changes.