class A interface I0> interface I1 where T : A interface I2> where T : A fun > foo0() {} fun foo1() where E : A {} fun > foo2() where E : A {} val > E.p1: Int get() = 1 val E.p2: Int where E : A get() = 1 val > E.p3: Int where E : A get() = 1 // See KT-8200 interface X public class EnumAttribute>(val klass: Class) where T : Enum