1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
trait A { type D >: Null <: C def foo(d: D)(d2: d.type): Unit trait C { def bar: Unit = foo(null)(null) } } object B extends A { class D extends C def foo(d: D)(d2: d.type): Unit = () // Bridge method required here! } object Test extends dotty.runtime.LegacyApp { new B.D().bar }