diff options
Diffstat (limited to 'tests/ui/suggestions/suggest-change-mut.rs')
-rw-r--r-- | tests/ui/suggestions/suggest-change-mut.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/ui/suggestions/suggest-change-mut.rs b/tests/ui/suggestions/suggest-change-mut.rs new file mode 100644 index 000000000..47dc7c343 --- /dev/null +++ b/tests/ui/suggestions/suggest-change-mut.rs @@ -0,0 +1,21 @@ +#![allow(warnings)] + +use std::io::{BufRead, BufReader, Read, Write}; + +fn issue_81421<T: Read + Write>(mut stream: T) { //~ HELP consider introducing a `where` clause + let initial_message = format!("Hello world"); + let mut buffer: Vec<u8> = Vec::new(); + let bytes_written = stream.write_all(initial_message.as_bytes()); + let flush = stream.flush(); + + loop { + let mut stream_reader = BufReader::new(&stream); + //~^ ERROR the trait bound `&T: std::io::Read` is not satisfied [E0277] + //~| HELP consider removing the leading `&`-reference + //~| HELP consider changing this borrow's mutability + stream_reader.read_until(b'\n', &mut buffer).expect("Reading into buffer failed"); + //~^ ERROR the method `read_until` exists for struct `BufReader<&T>`, + } +} + +fn main() {} |