// !LANGUAGE: +InlineClasses interface IFoo { fun foo(x: T): String } inline class Z(val x: Int) : IFoo { override fun foo(x: Z) = "OK" } fun box(): String = Z(1).foo(Z(2))