// WITH_STDLIB // WORKS_WHEN_VALUE_CLASS // LANGUAGE: +ValueClasses, +GenericInlineClassParameter OPTIONAL_JVM_INLINE_ANNOTATION value class A(val s: T) interface B { fun f(x: T): T } open class C { open fun f(x: A): A = A("OK") } class D : C(), B> fun box(): String { return (D() as B>).f(A("Fail")).s }