blob: cd81a8de59cc1ed0ff755786a5a31aee59faade2 [file]
// RUN_PIPELINE_TILL: FRONTEND
// FIR_IDENTICAL
// LANGUAGE: +DefinitelyNonNullableTypes
fun <T> foo(x: T, y: T & Any): T & Any = x ?: y
fun main() {
foo<String>("", "").length
foo<String>("", <!NULL_FOR_NONNULL_TYPE!>null<!>).length
foo<String?>(null, "").length
foo<String?>(null, <!NULL_FOR_NONNULL_TYPE!>null<!>).length
foo("", "").length
foo("", <!NULL_FOR_NONNULL_TYPE!>null<!>).length
foo(null, "").length
}
/* GENERATED_FIR_TAGS: dnnType, elvisExpression, functionDeclaration, nullableType, stringLiteral, typeParameter */