blob: b8725570ca4c129455f25c23e69f0218828a48ff [file] [log] [blame]
package test
interface A<T> {
fun foo(x: T & Any)
val w: T & Any
}
class B<X>(r: X & Any)
fun <K> inside() {
object : A<K> {
override fun foo(x: K & Any) {
}
override val w: K & Any
get() = TODO("")
}
}
fun <F> bar1(x: F & Any) {}
fun <F> bar2(x: F) = x!!
val <E> E.nn: E & Any get() = this!!
class Outer {
abstract class R1<T, F : T & Any> : A<T & Any>
abstract class R2<T, F : T & Any> : A<T>
abstract class W<T> : A<T>
}
typealias Alias<R> = A<R & Any>