Files
kotlin-fork/idea/testData/checker/Bounds.jet
T
2011-12-25 15:51:59 +04:00

27 lines
626 B
Plaintext

package boundsWithSubstitutors {
open class A<T>
class B<X : A<X>>()
class C : A<C>
val a = B<C>()
val a1 = B<<error>Int</error>>()
class X<A, B : A>()
val b = X<Any, X<A<C>, C>>
val b0 = X<Any, <error>Any?</error>>
val b1 = X<Any, X<A<C>, <error>String</error>>>
}
open class A {}
open class B<T : A>()
abstract class C<T : B<<error>Int</error>>, X : (B<<error>Char</error>>) -> #(B<<error>Any</error>>, B<A>)>() : B<<error>Any</error>>() { // 2 errors
val a = B<<error>Char</error>>() // error
abstract val x : (B<<error>Char</error>>) -> B<<error>Any</error>>
}