error[E0308]: mismatched types --> $DIR/closure-no-fn-1.rs:16: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:16:29: 16:50 a:_]` error: aborting due to previous error For more information about this error, try `rustc --explain E0308`.