You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently some tools in the ecosystem (certainly Scaladoc, possibly some others) rely on the fact that context bounds desugared to implicit/using parameters have names starting with evidence$.
Scaladoc detects such parameters and displays them as context bounds: def foo[T]()(using evidence$1 : Bound[T]) -> def foo[T : Bound]()
With context bound desugared to names not starting with evidence$ this heuristic no longer works.
This has already became a problem after #22019 (also see #22069), but will be more serious one after modularity stops being experimental.
So my question is: Can we have some additional information attached to parameters that are created from desugaring context bounds?
This could be some kind of flag attached to ValDefs (maybe something like artifact/synthetic? not really sure here), or maybe some annotation, eg (using namedContextBound: Bound[T] : @contextBoundEvidence).
The text was updated successfully, but these errors were encountered:
Currently some tools in the ecosystem (certainly Scaladoc, possibly some others) rely on the fact that context bounds desugared to implicit/using parameters have names starting with
evidence$
.Scaladoc detects such parameters and displays them as context bounds:
def foo[T]()(using evidence$1 : Bound[T])
->def foo[T : Bound]()
With context bound desugared to names not starting with
evidence$
this heuristic no longer works.This has already became a problem after #22019 (also see #22069), but will be more serious one after
modularity
stops being experimental.So my question is: Can we have some additional information attached to parameters that are created from desugaring context bounds?
This could be some kind of flag attached to
ValDef
s (maybe something like artifact/synthetic? not really sure here), or maybe some annotation, eg(using namedContextBound: Bound[T] : @contextBoundEvidence)
.The text was updated successfully, but these errors were encountered: