class Controller fun generate( block: (Controller) -> Unit ): T1 = TODO() fun foobar( cont: Controller ) {} fun foo() { generate { cont -> foobar(cont as Controller) baz(cont) } } fun baz(cont: Controller) {}