summaryrefslogtreecommitdiffstats
path: root/tests/ui/borrowck/borrowck-overloaded-index-ref-index.stderr
blob: 2f92c1ebe5e18d7ddbc3ffe6db31c891db34645c (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
error[E0502]: cannot borrow `s` as immutable because it is also borrowed as mutable
  --> $DIR/borrowck-overloaded-index-ref-index.rs:49:22
   |
LL |     let rs = &mut s;
   |              ------ mutable borrow occurs here
LL |     println!("{}", f[&s]);
   |                      ^^ immutable borrow occurs here
...
LL |     drop(rs);
   |          -- mutable borrow later used here

error[E0502]: cannot borrow `s` as immutable because it is also borrowed as mutable
  --> $DIR/borrowck-overloaded-index-ref-index.rs:51:7
   |
LL |     let rs = &mut s;
   |              ------ mutable borrow occurs here
...
LL |     f[&s] = 10;
   |       ^^ immutable borrow occurs here
...
LL |     drop(rs);
   |          -- mutable borrow later used here

error[E0594]: cannot assign to data in an index of `Bar`
  --> $DIR/borrowck-overloaded-index-ref-index.rs:56:5
   |
LL |     s[2] = 20;
   |     ^^^^^^^^^ cannot assign
   |
   = help: trait `IndexMut` is required to modify indexed content, but it is not implemented for `Bar`

error: aborting due to 3 previous errors

Some errors have detailed explanations: E0502, E0594.
For more information about an error, try `rustc --explain E0502`.