summaryrefslogtreecommitdiffstats
path: root/tests/ui/nll/guarantor-issue-46974.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/nll/guarantor-issue-46974.stderr')
-rw-r--r--tests/ui/nll/guarantor-issue-46974.stderr23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/ui/nll/guarantor-issue-46974.stderr b/tests/ui/nll/guarantor-issue-46974.stderr
new file mode 100644
index 000000000..8854dd8d6
--- /dev/null
+++ b/tests/ui/nll/guarantor-issue-46974.stderr
@@ -0,0 +1,23 @@
+error[E0506]: cannot assign to `*s` because it is borrowed
+ --> $DIR/guarantor-issue-46974.rs:7:5
+ |
+LL | let t = &mut *s; // this borrow should last for the entire function
+ | ------- borrow of `*s` occurs here
+LL | let x = &t.0;
+LL | *s = (2,);
+ | ^^^^^^^^^ assignment to borrowed `*s` occurs here
+LL | *x
+ | -- borrow later used here
+
+error: lifetime may not live long enough
+ --> $DIR/guarantor-issue-46974.rs:13:5
+ |
+LL | fn bar(s: &Box<(i32,)>) -> &'static i32 {
+ | - let's call the lifetime of this reference `'1`
+LL | // FIXME(#46983): error message should be better
+LL | &s.0
+ | ^^^^ returning this value requires that `'1` must outlive `'static`
+
+error: aborting due to 2 previous errors
+
+For more information about this error, try `rustc --explain E0506`.