// WITH_RUNTIME interface I interface Z abstract class A(x: T, y: Any?) { // INFO: {"checked": "true"} val foo1: T // INFO: {"checked": "true"} val foo2: Z // INFO: {"checked": "true"} val foo3: Any? // INFO: {"checked": "true"} val foo4: Z // INFO: {"checked": "true", "toAbstract": "true"} abstract val foo5: T // INFO: {"checked": "true", "toAbstract": "true"} abstract val foo6: Z // INFO: {"checked": "true", "toAbstract": "true"} abstract val foo7: Any? // INFO: {"checked": "true", "toAbstract": "true"} abstract val foo8: Z // INFO: {"checked": "true"} fun foo(x1: T, x2: Z, y1: Any?, y2: Z, w1: I, w2: Z, s1: S, s2: Z) { } // INFO: {"checked": "true"} inner class Foo(x1: T, x2: Z, y1: Any?, y2: Z, w1: I, w2: Z, s1: S, s2: Z): A>(), Z { } } class C { inner class B(x: X, y: Y): A>(x, y) { // INFO: {"checked": "true", "toAbstract": "true"} override val foo5 = x // INFO: {"checked": "true", "toAbstract": "true"} override val foo6 = object: Z {} // INFO: {"checked": "true", "toAbstract": "true"} override val foo7 = y // INFO: {"checked": "true", "toAbstract": "true"} override val foo8 = object: Z {} } }