// Test that mixing `Copy` and non-`Copy` types in `@` patterns is forbidden. #![feature(bindings_after_at)] #[derive(Copy, Clone)] struct C; struct NC(A, B); fn main() { let a @ NC(b, c @ NC(d, e)) = NC(C, NC(C, C)); //~^ ERROR use of partially moved value }