| interface I { | |
| fun inherited(s: String): String = privateInherited(s) | |
| private fun privateInherited(s: String): String = s | |
| } | |
| fun interface F : I { | |
| fun invoke(o: String): String | |
| fun result(): String = inherited(privateFun("O")) | |
| private fun privateFun(s: String): String = invoke(s) | |
| } | |
| fun box(): String { | |
| if (F { o -> o + "K" }.result() != "OK") return "Fail" | |
| val lambda: (String) -> String = { o -> o + "K" } | |
| return F(lambda).result() | |
| } |