error[E0303]: pattern bindings are not allowed after an `@` --> $DIR/pattern-bindings-after-at.rs:8:31 | LL | ref mut z @ &mut Some(ref a) => { | ^^^^^ not allowed after `@` warning[E0502]: cannot borrow `_` as immutable because it is also borrowed as mutable --> $DIR/pattern-bindings-after-at.rs:8:31 | LL | ref mut z @ &mut Some(ref a) => { | ----------------------^^^^^- | | | | | immutable borrow occurs here | mutable borrow occurs here ... LL | **z = None; | ---------- mutable borrow later used here | = warning: this error has been downgraded to a warning for backwards compatibility with previous releases = warning: this represents potential undefined behavior in your code and this warning will become a hard error in the future error: aborting due to previous error Some errors have detailed explanations: E0303, E0502. For more information about an error, try `rustc --explain E0303`.