error[E0308]: mismatched types --> $DIR/closure-no-fn-1.rs:6:29 | LL | let foo: fn(u8) -> u8 = |v: u8| { a += v; a }; | ^^^^^^^^^^^^^^^^^^^^^ expected fn pointer, found closure | = note: expected type `fn(u8) -> u8` found type `[closure@$DIR/closure-no-fn-1.rs:6:29: 6:50 a:_]` error: aborting due to previous error For more information about this error, try `rustc --explain E0308`.