File: issue-82612-return-mutable-reference.stderr

package info (click to toggle)
rustc 1.85.0%2Bdfsg3-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental, forky, sid, trixie
  • size: 893,396 kB
  • sloc: xml: 158,127; python: 35,830; javascript: 19,497; cpp: 19,002; sh: 17,245; ansic: 13,127; asm: 4,376; makefile: 1,051; perl: 29; lisp: 29; ruby: 19; sql: 11
file content (28 lines) | stat: -rw-r--r-- 988 bytes parent folder | download | duplicates (6)
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
error[E0308]: mismatched types
  --> $DIR/issue-82612-return-mutable-reference.rs:18:13
   |
LL | /         if index < self.values.len() {
LL | |             let value = unsafe { self.values.get_unchecked_mut(index) };
LL | |             value.get_or_insert_with(func)
   | |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found `&mut V`
LL | |         }
   | |_________- expected this to be `()`
   |
   = note:      expected unit type `()`
           found mutable reference `&mut V`
help: consider using a semicolon here
   |
LL |             value.get_or_insert_with(func);
   |                                           +
help: consider using a semicolon here
   |
LL |         };
   |          +
help: you might have meant to return this value
   |
LL |             return value.get_or_insert_with(func);
   |             ++++++                               +

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0308`.