blob: efe5988697ec3466ac9bdca4bf549e1d4a2dcc38 [file]
// RUN_PIPELINE_TILL: CODEGEN
import kotlin.reflect.KProperty
interface XEntity
class Provider<out R> {
operator fun provideDelegate(thisRef: XEntity, prop: Any): R = null!!
}
class Prop<E, V> {
operator fun getValue(receiver: E, prop: Any): V = null!!
}
fun <R: XEntity, V> mkProp(): Provider<Prop<R, V>> = Provider()
class MyEnt: XEntity {
val d: String by mkProp()
}
/* GENERATED_FIR_TAGS: checkNotNullCall, classDeclaration, functionDeclaration, interfaceDeclaration, nullableType,
operator, out, propertyDeclaration, propertyDelegate, typeConstraint, typeParameter */