class A { val a: Int by Delegate() } val aTopLevel: Int by Delegate() class Delegate { fun get(t: Any?, p: PropertyMetadata, a: Int): Int { t.equals(p) // to avoid UNUSED_PARAMETER warning return a } }