diff options
Diffstat (limited to 'tests/ui/nll/loan_ends_mid_block_vec.rs')
-rw-r--r-- | tests/ui/nll/loan_ends_mid_block_vec.rs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/ui/nll/loan_ends_mid_block_vec.rs b/tests/ui/nll/loan_ends_mid_block_vec.rs new file mode 100644 index 000000000..2edcdef0a --- /dev/null +++ b/tests/ui/nll/loan_ends_mid_block_vec.rs @@ -0,0 +1,30 @@ +#![allow(warnings)] +#![feature(rustc_attrs)] + +fn main() { +} + +fn nll_fail() { + let mut data = vec!['a', 'b', 'c']; + let slice = &mut data; + capitalize(slice); + data.push('d'); + //~^ ERROR [E0499] + data.push('e'); + //~^ ERROR [E0499] + data.push('f'); + //~^ ERROR [E0499] + capitalize(slice); +} + +fn nll_ok() { + let mut data = vec!['a', 'b', 'c']; + let slice = &mut data; + capitalize(slice); + data.push('d'); + data.push('e'); + data.push('f'); +} + +fn capitalize(_: &mut [char]) { +} |