summaryrefslogtreecommitdiffstats
path: root/tests/ui/borrowck/issue-47646.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/borrowck/issue-47646.stderr')
-rw-r--r--tests/ui/borrowck/issue-47646.stderr20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/ui/borrowck/issue-47646.stderr b/tests/ui/borrowck/issue-47646.stderr
new file mode 100644
index 000000000..84cf9237a
--- /dev/null
+++ b/tests/ui/borrowck/issue-47646.stderr
@@ -0,0 +1,20 @@
+error[E0502]: cannot borrow `heap` as immutable because it is also borrowed as mutable
+ --> $DIR/issue-47646.rs:9:30
+ |
+LL | let borrow = heap.peek_mut();
+ | --------------- mutable borrow occurs here
+LL |
+LL | match (borrow, ()) {
+ | ------------ a temporary with access to the mutable borrow is created here ...
+LL | (Some(_), ()) => {
+LL | println!("{:?}", heap);
+ | ^^^^ immutable borrow occurs here
+...
+LL | };
+ | - ... and the mutable borrow might be used here, when that temporary is dropped and runs the destructor for type `(Option<PeekMut<'_, i32>>, ())`
+ |
+ = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0502`.