From 218caa410aa38c29984be31a5229b9fa717560ee Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:19:13 +0200 Subject: Merging upstream version 1.68.2+dfsg1. Signed-off-by: Daniel Baumann --- tests/ui/borrowck/borrowck-lend-flow-match.rs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 tests/ui/borrowck/borrowck-lend-flow-match.rs (limited to 'tests/ui/borrowck/borrowck-lend-flow-match.rs') diff --git a/tests/ui/borrowck/borrowck-lend-flow-match.rs b/tests/ui/borrowck/borrowck-lend-flow-match.rs new file mode 100644 index 000000000..9737bc769 --- /dev/null +++ b/tests/ui/borrowck/borrowck-lend-flow-match.rs @@ -0,0 +1,18 @@ +fn separate_arms() { + // Here both arms perform assignments, but only one is illegal. + + let mut x = None; + match x { + None => { + // It is ok to reassign x here, because there is in + // fact no outstanding loan of x! + x = Some(0); + } + Some(ref r) => { + x = Some(1); //~ ERROR cannot assign to `x` because it is borrowed + drop(r); + } + } +} + +fn main() {} -- cgit v1.2.3