error[E0308]: mismatched types --> $DIR/static-reference-to-fn-1.rs:17:15 | LL | func: &foo, | ^^^^ | | | expected fn pointer, found fn item | help: consider casting to a fn pointer: `&(foo as fn() -> Option)` | = note: expected reference `&fn() -> Option` found reference `&fn() -> Option {foo}` = note: fn items are distinct from fn pointers error: aborting due to previous error For more information about this error, try `rustc --explain E0308`.