final
object
SubstOnlyTreeMaker
extends
Function2
In scalac for such block x match { case d =>
}d inside
was to be substitued by x.In dotty, SubstOnlyTreeMakers instead generate normal ValDef, and does not create a new substitution.
This was done for several reasons: 1) it is a lot easyer to Y-check, as d type could be used in
. 2) it would simplify debugging of the generated code as this works also for nested patterns, and previously they used unreadable names 3) It showed better(~30%), performance, Rebuilding tree and propagating types was taking substantial time.