summaryrefslogtreecommitdiffstats
path: root/tests/ui/nll/polonius/polonius-smoke-test.stderr
blob: 534813b2d9f5ae64c8b32f416f6f3a573e57b24e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
error[E0515]: cannot return reference to local variable `x`
  --> $DIR/polonius-smoke-test.rs:6:5
   |
LL |     &x
   |     ^^ returns a reference to data owned by the current function

error[E0503]: cannot use `x` because it was mutably borrowed
  --> $DIR/polonius-smoke-test.rs:12:13
   |
LL |     let y = &mut x;
   |             ------ `x` is borrowed here
LL |     let z = x;
   |             ^ use of borrowed `x`
LL |     let w = y;
   |             - borrow later used here

error[E0505]: cannot move out of `x` because it is borrowed
  --> $DIR/polonius-smoke-test.rs:18:13
   |
LL | pub fn use_while_mut_fr(x: &mut i32) -> &mut i32 {
   |                         -  - let's call the lifetime of this reference `'1`
   |                         |
   |                         binding `x` declared here
LL |     let y = &mut *x;
   |             ------- borrow of `*x` occurs here
LL |     let z = x;
   |             ^ move out of `x` occurs here
LL |     y
   |     - returning this value requires that `*x` is borrowed for `'1`

error[E0505]: cannot move out of `s` because it is borrowed
  --> $DIR/polonius-smoke-test.rs:42:5
   |
LL |     let s = &mut 1;
   |         - binding `s` declared here
LL |     let r = &mut *s;
   |             ------- borrow of `*s` occurs here
LL |     let tmp = foo(&r);
LL |     s;
   |     ^ move out of `s` occurs here
LL |     tmp;
   |     --- borrow later used here

error: aborting due to 4 previous errors

Some errors have detailed explanations: E0503, E0505, E0515.
For more information about an error, try `rustc --explain E0503`.