summaryrefslogtreecommitdiffstats
path: root/tests/ui/borrowck/borrowck-consume-upcast-box.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/borrowck/borrowck-consume-upcast-box.stderr')
-rw-r--r--tests/ui/borrowck/borrowck-consume-upcast-box.stderr21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/ui/borrowck/borrowck-consume-upcast-box.stderr b/tests/ui/borrowck/borrowck-consume-upcast-box.stderr
new file mode 100644
index 000000000..ed7e883ca
--- /dev/null
+++ b/tests/ui/borrowck/borrowck-consume-upcast-box.stderr
@@ -0,0 +1,21 @@
+error[E0382]: use of moved value: `b`
+ --> $DIR/borrowck-consume-upcast-box.rs:10:13
+ |
+LL | fn foo(b: Box<dyn Foo + Send>) {
+ | - move occurs because `b` has type `Box<dyn Foo + Send>`, which does not implement the `Copy` trait
+LL | consume(b);
+ | - value moved here
+LL | consume(b);
+ | ^ value used here after move
+ |
+note: consider changing this parameter type in function `consume` to borrow instead if owning the value isn't necessary
+ --> $DIR/borrowck-consume-upcast-box.rs:5:15
+ |
+LL | fn consume(_: Box<dyn Foo>) {
+ | ------- ^^^^^^^^^^^^ this parameter takes ownership of the value
+ | |
+ | in this function
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0382`.