Files
kotlin-fork/compiler/testData/diagnostics/tests/generics/nullability/useAsValueArgument.kt
T
Denis Zharkov 6ecfa6e985 Refine subtyping check: pay attention to corresponding supertype nullability
F: Any, T : F? => !isSubtype(T, Any)

It helps to identify upper bounds violation like in KT-7455

 #KT-7455 Fixed
 #KT-2924 Fixed
 #KT-3015 Fixed
2015-08-28 18:50:25 +03:00

18 lines
328 B
Kotlin
Vendored

// !DIAGNOSTICS: -UNUSED_PARAMETER,-UNUSED_VARIABLE
fun <T : CharSequence?> bar1(x: T) {}
fun bar2(x: CharSequence?) {}
fun <T : CharSequence> bar3(x: T) {}
fun bar4(x: String) {}
fun <T : String?> foo(x: T) {
bar1(x)
bar2(x)
<!TYPE_INFERENCE_UPPER_BOUND_VIOLATED!>bar3<!>(x)
bar4(<!TYPE_MISMATCH!>x<!>)
}