]>
Commit | Line | Data |
---|---|---|
6a06907d XL |
1 | error[E0277]: the trait bound `&T: std::io::Read` is not satisfied |
2 | --> $DIR/suggest-change-mut.rs:12:48 | |
3 | | | |
4 | LL | let mut stream_reader = BufReader::new(&stream); | |
5 | | ^^^^^^^ the trait `std::io::Read` is not implemented for `&T` | |
6 | | | |
136023e0 XL |
7 | note: required by `BufReader::<R>::new` |
8 | --> $SRC_DIR/std/src/io/buffered/bufreader.rs:LL:COL | |
9 | | | |
10 | LL | pub fn new(inner: R) -> BufReader<R> { | |
11 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
6a06907d XL |
12 | help: consider removing the leading `&`-reference |
13 | | | |
14 | LL | let mut stream_reader = BufReader::new(stream); | |
15 | | -- | |
16 | help: consider introducing a `where` bound, but there might be an alternative better way to express this requirement | |
17 | | | |
18 | LL | fn issue_81421<T: Read + Write>(mut stream: T) where &T: std::io::Read { | |
19 | | ^^^^^^^^^^^^^^^^^^^^^^^ | |
20 | help: consider changing this borrow's mutability | |
21 | | | |
22 | LL | let mut stream_reader = BufReader::new(&mut stream); | |
23 | | ^^^^ | |
24 | ||
25 | error[E0599]: the method `read_until` exists for struct `BufReader<&T>`, but its trait bounds were not satisfied | |
26 | --> $DIR/suggest-change-mut.rs:16:23 | |
27 | | | |
28 | LL | stream_reader.read_until(b'\n', &mut buffer).expect("Reading into buffer failed"); | |
29 | | ^^^^^^^^^^ method cannot be called on `BufReader<&T>` due to unsatisfied trait bounds | |
30 | | | |
31 | ::: $SRC_DIR/std/src/io/buffered/bufreader.rs:LL:COL | |
32 | | | |
33 | LL | pub struct BufReader<R> { | |
34 | | ----------------------- doesn't satisfy `BufReader<&T>: BufRead` | |
35 | | | |
36 | = note: the following trait bounds were not satisfied: | |
37 | `&T: std::io::Read` | |
38 | which is required by `BufReader<&T>: BufRead` | |
39 | ||
40 | error: aborting due to 2 previous errors | |
41 | ||
42 | Some errors have detailed explanations: E0277, E0599. | |
43 | For more information about an error, try `rustc --explain E0277`. |