// Ambiguity between fun and callable property open class BaseWithCallableProp { val fn = { "fn.invoke()" } val bar = { "bar.invoke()"} open fun bar(): String = "bar()" } interface InterfaceWithFun { fun fn(): String = "fn()" } class DerivedUsingFun : BaseWithCallableProp(), InterfaceWithFun { fun foo(): String = super.fn() override fun bar(): String = super.bar() }