val a = fun() {} val b = fun test() {} val c = fun() {} val c = fun() = 4 val c = fun() = 4 val c = fun() {} val c = fun() = 4 fun test() = fun test() = 4 fun test() { test(fun() { }) test(fun test() {}) test(fun test() = 5) test(fun test() = fun test(a: Int) = 2) 2.(fun test() {})() (fun() = 4) (fun() {}) test(fun test() = 4) } fun d = fun(a: Int, b: String) { } fun e = fun() { val a = 1 } fun f = fun() { foo() } val g: (String) -> Int = fun(p: String): Unit { /* comment */ /* other comment */ } fun foo() {}