summaryrefslogtreecommitdiffstats
path: root/src/test/ui/nll/loan_ends_mid_block_vec.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/nll/loan_ends_mid_block_vec.rs')
-rw-r--r--src/test/ui/nll/loan_ends_mid_block_vec.rs30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/test/ui/nll/loan_ends_mid_block_vec.rs b/src/test/ui/nll/loan_ends_mid_block_vec.rs
new file mode 100644
index 000000000..2edcdef0a
--- /dev/null
+++ b/src/test/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]) {
+}