Skip to content

Conversation

hamzaremmal
Copy link
Member

During the transition, we will keep desugaring context bounds in Scala 2 files as implicit clauses, not using clauses.

Related to #21257

@hamzaremmal hamzaremmal marked this pull request as ready for review September 15, 2025 22:16
@hamzaremmal
Copy link
Member Author

hamzaremmal commented Sep 15, 2025

The more I think about this change, the more I don't think it's a good idea.

To explain more: if we merge this, we offer a migration path as these context bounds will still be an implicit and we will have at call site the warning "implicit will now require using keyword". We can only revert them back to contextual parameters in 3.10.0. Also, this will be breaking the specification for these set of files (but really, we are already breaking the specification for these sets of files). If we don't merge this, people will be forced to add at call site the using keyword if required. We will still follow the specification (at least for this part) and we will not have a weird behavior where part of the context bounds in the stdlib are givens and another part are implicits and we will have what people will expect now since 3.6.0 and not be flabbergasted by yet another exception to following the specification (which this time is user facing).

@hamzaremmal hamzaremmal added the stat:needs decision Some aspects of this issue need a decision from the maintainance team. label Sep 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stat:needs decision Some aspects of this issue need a decision from the maintainance team.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant