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
Add extension/conversion to GADT selection healing
The GADT member selection "healing" logic only accounted for members
that belong to the resulting GADT-approximated type, meaning extension
methods weren't considered.
I moved that logic to typedSelect, so that the resulting tree from
running the extension or conversion attempt can be returned. In
adaptToSubType it was adapting the qualifier only. For example, we try
to extend/convert `a.$asInstanceOf[MyData].printIt` and get back
`MyData.printIt(a.$asInstanceOf[MyData])` which we can return
(instead of throwing it away and having typedSelect redo the work.)
That also puts the new use of `tryExtensionOrConversion` next to the
previous use, for the original qualifier type.
0 commit comments