diff options
Diffstat (limited to 'tests/ui/binding/match-implicit-copy-unique.rs')
-rw-r--r-- | tests/ui/binding/match-implicit-copy-unique.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/ui/binding/match-implicit-copy-unique.rs b/tests/ui/binding/match-implicit-copy-unique.rs new file mode 100644 index 000000000..74ffe2ecd --- /dev/null +++ b/tests/ui/binding/match-implicit-copy-unique.rs @@ -0,0 +1,16 @@ +// run-pass +#![allow(non_shorthand_field_patterns)] + +struct Pair { a: Box<isize>, b: Box<isize> } + +pub fn main() { + let mut x: Box<_> = Box::new(Pair { a: Box::new(10), b: Box::new(20) }); + let x_internal = &mut *x; + match *x_internal { + Pair {a: ref mut a, b: ref mut _b} => { + assert_eq!(**a, 10); + *a = Box::new(30); + assert_eq!(**a, 30); + } + } +} |