Closed
Description
trait T { @inline def f = 1 } } // note that f is not final
class C extends T
bfore nuke-impl-classes, the mixin f
in C
is def f = T$class.f(this)
, which is inlined.
with default methods the mixin becomes def f = super.f
and is currently not inlined, even though it could (INVOKESPECIAL
).
Note that this also causes an inliner warning (T::f()I is annotated @inline but cannot be inlined: the method is not final and may be overridden
)