// FIR_IDENTICAL // ISSUE: KT-58013 (related) // WITH_REFLECT // FIR_DUMP import kotlin.reflect.KProperty data class Ref(val t: D) operator fun Ref.getValue(hisRef: Any?, property: KProperty<*>): V = this.t fun List>.getElement(i: Int): Ref = this[i] as Ref fun test(list: List>, arg: Boolean) { val data: String by if (arg) list.getElement(0) else list.getElement(1) }