This phase adds forwarder where mixedin generic and primitive typed methods have a missmatch.
In particular for every method that is declared both as generic with a primitive type and with a primitive type
<mods> def f[Ts](ps1)...(psN): U in trait M
in implemented in N
where U is a primitive and V a polymorphic type (or vice versa) needs:
IMPORTANT: When\If Valhalla happens, we'll need to move mixin before erasure and than this code will need to be rewritten as it will instead change super-class.
Can this transform create or delete non-private members?
A name given to the
Phase that can be used to debug the compiler. For
instance, it is possible to print trees after a given phase using:
$ ./bin/dotc -Xprint:<phaseNameHere> sourceFile.scala
List of names of phases that should precede this phase