test improved

This commit is contained in:
Svetlana Isakova
2013-02-07 18:09:39 +04:00
parent db91928984
commit 27e6dad307
@@ -1,15 +1,22 @@
package a
fun foo<V : U, U>(<!UNUSED_PARAMETER!>v<!>: V, u: U) = u
fun bar<U, V : U>(<!UNUSED_PARAMETER!>v<!>: V, u: U) = u
fun foo<V: U, U>(<!UNUSED_PARAMETER!>v<!>: V, u: U) = u
fun bar<U, V: U>(<!UNUSED_PARAMETER!>v<!>: V, u: U) = u
fun test(a: Any, s: String) {
val <!UNUSED_VARIABLE!>b<!>: Any = foo(a, s)
val <!UNUSED_VARIABLE!>c<!>: Any = bar(a, s)
val b = foo(a, s)
checkItIsExactlyAny(a, arrayListOf(b))
val c = bar(a, s)
checkItIsExactlyAny(a, arrayListOf(c))
}
fun checkItIsExactlyAny<T>(<!UNUSED_PARAMETER!>t<!>: T, <!UNUSED_PARAMETER!>l<!>: MutableList<T>) {}
fun baz<V : U, U>(<!UNUSED_PARAMETER!>v<!>: V, u: MutableSet<U>) = u
fun test(a: Any, s: MutableSet<String>) {
<!TYPE_INFERENCE_UPPER_BOUND_VIOLATED!>baz<!>(a, s)
}
//from standard library
fun arrayListOf<T>(vararg <!UNUSED_PARAMETER!>t<!>: T): MutableList<T> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>