Avatar
1> struct Foo { 2. var a: Int 3. var b: String 4. } 5> let foo = { 6. let a = 42 7. let b = "xyz" 8. return Foo(a: a, b: b) 9. }() error: repl.swift:5:11: error: unable to infer complex closure return type; add explicit type to disambiguate let foo = { ^ () -> Foo in
2:09 AM
5> let foo: Foo = { 6. let a = 42 7. let b = "xyz" 8. return Foo(a: a, b: b) 9. }() foo: Foo = { a = 42 b = "xyz" }
2:09 AM
10> func bar(foo: Foo) {} 11> bar(foo: { 12. let a = 42 13. let b = "xyz" 14. return Foo(a: a, b: b) 15. }()) ↑OK (edited)