error[E0059]: cannot use call notation; the first type parameter for the function trait is neither a tuple nor unit --> $DIR/E0059.rs:13:41 | LL | fn foo>(f: F) -> F::Output { f(3) } //~ ERROR E0059 | ^^^^ error: aborting due to previous error If you want more information on this error, try using "rustc --explain E0059"