// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -UNUSED_EXPRESSION // Isuue: KT-37627 class Inv(arg: T) class Pair infix fun M.to(other: N): Pair = TODO() fun id(arg: I): I = arg fun select(vararg args: S): S = TODO() fun test(bool: Boolean) { val test1 = if (bool) { { "1" } } else null kotlin.String)?")!>test1 val test2 = if (bool) { id { "2" } } else null kotlin.String)?")!>test2 val test3 = if (bool) { Inv { "3" } } else null kotlin.String>?")!>test3 val test4 = if (bool) { 4 to { "4" } } else null kotlin.String>?")!>test4 val test5 = if (bool) { {{ "5" }} } else null () -> kotlin.String)?")!>test5 val test6 = if (bool) { id { { "6" } } } else null () -> kotlin.String)?")!>test6 val test7 = if (bool) { Inv { { "7" } } } else null () -> kotlin.String>?")!>test7 val test8 = if (bool) { 8 to { { "8" } } } else null () -> kotlin.String>?")!>test8 val test9 = select({ "9" }, null) kotlin.String)?")!>test9 val test10 = select(id { "10" }, null) kotlin.String)?")!>test10 val test11 = select(null, Inv { "11" }) kotlin.String>?")!>test11 val test12 = select({ 12 to "" }, null) Pair)?")!>test12 val test13: Pair () -> String>? = if(bool) { 13 to { { "13" } } } else null () -> kotlin.String>?")!>test13 }