blob: 8d3e441103a3ddd5335dc9eb3f1c26efdb85fa3a [file] [log] [blame]
// !LANGUAGE: +NoBuilderInferenceWithoutAnnotationRestriction
class Foo<T : Any> {
fun doSmthng(arg: T) {}
var a: T? = null
}
fun <T : Any> myBuilder(block: Foo<T>.() -> Unit) : Foo<T> = Foo<T>().apply(block)
fun main(arg: Any) {
val x = 57
val value = myBuilder {
doSmthng("one ")
a = <!ASSIGNMENT_TYPE_MISMATCH!>57<!>
a = <!ASSIGNMENT_TYPE_MISMATCH!>x<!>
if (arg is String) {
a = arg
}
}
println(value.a?.count { it in 'l' .. 'q' })
}