diff --git a/src/test/run-pass/issue-868.rs b/src/test/run-pass/issue-868.rs new file mode 100644 index 000000000000..dcc8c4e08db8 --- /dev/null +++ b/src/test/run-pass/issue-868.rs @@ -0,0 +1,15 @@ +fn f(g: fn() -> T) -> T { g() } + +fn main() { + let _x = f( | | { 10 }); + // used to be: cannot determine a type for this expression + f(| | { }); + // ditto + f( | | { ()}); + // always worked + let _: () = f(| | { }); + // empty block with no type info should compile too + let _ = f(||{}); + let _ = (||{}); +} +