Skip to content

Commit

Permalink
Added updated compiler diagnostic
Browse files Browse the repository at this point in the history
  • Loading branch information
Lucretiel committed Sep 15, 2020
1 parent 96229f0 commit 6d75cdf
Showing 1 changed file with 5 additions and 20 deletions.
25 changes: 5 additions & 20 deletions src/test/ui/suggestions/mut-borrow-needed-by-trait.stderr
Expand Up @@ -5,18 +5,13 @@ LL | let fp = BufWriter::new(fp);
| ^^ the trait `std::io::Write` is not implemented for `&dyn std::io::Write`
|
= note: `std::io::Write` is implemented for `&mut dyn std::io::Write`, but not for `&dyn std::io::Write`
= note: required by `BufWriter::<W>::new`
= note: required by `std::io::BufWriter::<W>::new`

error[E0277]: the trait bound `&dyn std::io::Write: std::io::Write` is not satisfied
--> $DIR/mut-borrow-needed-by-trait.rs:17:14
|
LL | let fp = BufWriter::new(fp);
| ^^^^^^^^^^^^^^ the trait `std::io::Write` is not implemented for `&dyn std::io::Write`
|
::: $SRC_DIR/std/src/io/buffered.rs:LL:COL
|
LL | pub struct BufWriter<W: Write> {
| ----- required by this bound in `BufWriter`
|
= note: `std::io::Write` is implemented for `&mut dyn std::io::Write`, but not for `&dyn std::io::Write`

Expand All @@ -25,28 +20,18 @@ error[E0277]: the trait bound `&dyn std::io::Write: std::io::Write` is not satis
|
LL | let fp = BufWriter::new(fp);
| ^^^^^^^^^^^^^^^^^^ the trait `std::io::Write` is not implemented for `&dyn std::io::Write`
|
::: $SRC_DIR/std/src/io/buffered.rs:LL:COL
|
LL | pub struct BufWriter<W: Write> {
| ----- required by this bound in `BufWriter`
|
= note: `std::io::Write` is implemented for `&mut dyn std::io::Write`, but not for `&dyn std::io::Write`

error[E0599]: no method named `write_fmt` found for struct `BufWriter<&dyn std::io::Write>` in the current scope
error[E0599]: no method named `write_fmt` found for struct `std::io::BufWriter<&dyn std::io::Write>` in the current scope
--> $DIR/mut-borrow-needed-by-trait.rs:22:5
|
LL | writeln!(fp, "hello world").unwrap();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `BufWriter<&dyn std::io::Write>`
|
::: $SRC_DIR/std/src/io/buffered.rs:LL:COL
|
LL | pub struct BufWriter<W: Write> {
| ------------------------------ doesn't satisfy `BufWriter<&dyn std::io::Write>: std::io::Write`
LL | writeln!(fp, "hello world").unwrap();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `std::io::BufWriter<&dyn std::io::Write>`
|
= note: the method `write_fmt` exists but the following trait bounds were not satisfied:
`&dyn std::io::Write: std::io::Write`
which is required by `BufWriter<&dyn std::io::Write>: std::io::Write`
which is required by `std::io::BufWriter<&dyn std::io::Write>: std::io::Write`
= note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 4 previous errors
Expand Down

0 comments on commit 6d75cdf

Please sign in to comment.