blob: d1ebe4294e8f368ff2bd8c6037806f6d49ba106d [file] [log] [blame]
interface A<in T> {}
interface B<T> : A<Int> {}
interface C<T> : <error>B<T>, A<T></error> {}
interface C1<T> : <error>B<T>, A<Any></error> {}
interface D : <error><error>C<Boolean>, B<Double></error></error>{}
interface A1<out T> {}
interface B1 : A1<Int> {}
interface B2 : <error>A1<Any>, B1</error> {}
interface BA1<T> {}
interface BB1 : BA1<Int> {}
interface BB2 : <error>BA1<Any>, BB1</error> {}
//package x {
interface xAA1<out T> {}
interface xAB1 : xAA1<Int> {}
interface xAB3 : xAA1<Comparable<Int>> {}
interface xAB2 : <error>xAA1<Number>, xAB1, xAB3</error> {}
//}
//package x2 {
interface x2AA1<out T> {}
interface x2AB1 : x2AA1<Any> {}
interface x2AB3 : x2AA1<Comparable<Int>> {}
interface x2AB2 : <error>x2AA1<Number>, x2AB1, x2AB3</error> {}
//}
//package x3 {
interface x3AA1<in T> {}
interface x3AB1 : x3AA1<Any> {}
interface x3AB3 : x3AA1<Comparable<Int>> {}
interface x3AB2 : <error>x3AA1<Number>, x3AB1, x3AB3</error> {}
//}
//package sx2 {
interface sx2AA1<in T> {}
interface sx2AB1 : sx2AA1<Int> {}
interface sx2AB3 : sx2AA1<Comparable<Int>> {}
interface sx2AB2 : <error>sx2AA1<Number>, sx2AB1, sx2AB3</error> {}
//}