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
* Fix#7458: Refine typevar interpolation
If there are several type variables to instantiate in an interpolation call,
instantiate first those type variables that do not tighten the constraint for
other instantiatable type variables.
The following code from i7458.scala requires this new scheme to compile.
```
type Tr[+V1, +O1 <: V1]
def [V2, O2 <: V2](tr: Tr[V2, O2]) sl: Tr[V2, O2] = ???
def as[V3, O3 <: V3](tr: Tr[V3, O3]) : Tr[V3, O3] = tr.sl
```
Interestingly, adding `()` to the parameter list of `sl` makes
the problem disappear even without the fix. The reason is that in
this case interpolation is suspended to a later point since expressions of
method type are not interpolated.
* Address review comment
0 commit comments