summaryrefslogtreecommitdiffstats
path: root/tests/ui/borrowck/issue-45199.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/borrowck/issue-45199.rs')
-rw-r--r--tests/ui/borrowck/issue-45199.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/ui/borrowck/issue-45199.rs b/tests/ui/borrowck/issue-45199.rs
new file mode 100644
index 000000000..ded46e56e
--- /dev/null
+++ b/tests/ui/borrowck/issue-45199.rs
@@ -0,0 +1,24 @@
+fn test_drop_replace() {
+ let b: Box<isize>;
+ //~^ HELP consider making this binding mutable
+ //~| SUGGESTION mut b
+ b = Box::new(1); //~ NOTE first assignment
+ b = Box::new(2); //~ ERROR cannot assign twice to immutable variable `b`
+ //~| NOTE cannot assign twice to immutable
+}
+
+fn test_call() {
+ let b = Box::new(1); //~ NOTE first assignment
+ //~| HELP consider making this binding mutable
+ //~| SUGGESTION mut b
+ b = Box::new(2); //~ ERROR cannot assign twice to immutable variable `b`
+ //~| NOTE cannot assign twice to immutable
+}
+
+fn test_args(b: Box<i32>) { //~ HELP consider making this binding mutable
+ //~| SUGGESTION mut b
+ b = Box::new(2); //~ ERROR cannot assign to immutable argument `b`
+ //~| NOTE cannot assign to immutable argument
+}
+
+fn main() {}