error[E0308]: mismatched types --> $DIR/field-projection-mutating-context.rs:9:13 | LL | let Foo(ref mut y): Foo = x; | ^^^^^^^^^ one type is more general than the other | = note: expected fn pointer `for<'a> fn(&'a _)` found fn pointer `fn(&_)` error: aborting due to 1 previous error For more information about this error, try `rustc --explain E0308`.