// WITH_STDLIB import kotlin.experimental.ExperimentalTypeInference class Foo { fun add(x: T) {} } @OptIn(ExperimentalTypeInference::class) fun myBuilder1(builder: Foo.() -> Foo): Foo = Foo().apply { builder() } @OptIn(ExperimentalTypeInference::class) fun myBuilder2(builder: Foo.() -> Unit): Foo = Foo().apply(builder) val result1 = myBuilder1 { add(null) myBuilder2 { add("") } }