// FIR_IDENTICAL // ISSUE: KT-41952 import kotlin.reflect.KClass import kotlin.reflect.KProperty class Issue { val strings by bidir_collection(String::class) { takeIssue(it) // Issue? instead of Issue } } fun takeIssue(issue: Issue) {} fun Self.bidir_collection(targetType: KClass, f: (Self) -> Unit): Delegate> = null!! class Delegate { operator fun getValue(thisRef: R, property: KProperty<*>): T { return null!! } operator fun setValue(thisRef: R, property: KProperty<*>, value: T) {} }