Add test for extra <> in dyn suggestion.

This commit is contained in:
Mara Bos 2021-08-30 22:34:46 +02:00
parent 23d2cb8435
commit f8beb8f7f7
3 changed files with 71 additions and 0 deletions

View file

@ -0,0 +1,23 @@
// See https://github.com/rust-lang/rust/issues/88508
// run-rustfix
// edition:2018
#![deny(bare_trait_objects)]
#![allow(dead_code)]
#![allow(unused_imports)]
use std::fmt;
#[derive(Debug)]
pub struct Foo;
impl fmt::Display for Foo {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
<dyn fmt::Debug>::fmt(self, f)
//~^ ERROR trait objects without an explicit `dyn` are deprecated
//~| WARNING this is accepted in the current edition
//~| ERROR trait objects without an explicit `dyn` are deprecated
//~| WARNING this is accepted in the current edition
}
}
fn main() {}

View file

@ -0,0 +1,23 @@
// See https://github.com/rust-lang/rust/issues/88508
// run-rustfix
// edition:2018
#![deny(bare_trait_objects)]
#![allow(dead_code)]
#![allow(unused_imports)]
use std::fmt;
#[derive(Debug)]
pub struct Foo;
impl fmt::Display for Foo {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
<fmt::Debug>::fmt(self, f)
//~^ ERROR trait objects without an explicit `dyn` are deprecated
//~| WARNING this is accepted in the current edition
//~| ERROR trait objects without an explicit `dyn` are deprecated
//~| WARNING this is accepted in the current edition
}
}
fn main() {}

View file

@ -0,0 +1,25 @@
error: trait objects without an explicit `dyn` are deprecated
--> $DIR/dyn-angle-brackets.rs:15:10
|
LL | <fmt::Debug>::fmt(self, f)
| ^^^^^^^^^^ help: use `dyn`: `dyn fmt::Debug`
|
note: the lint level is defined here
--> $DIR/dyn-angle-brackets.rs:4:9
|
LL | #![deny(bare_trait_objects)]
| ^^^^^^^^^^^^^^^^^^
= warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
error: trait objects without an explicit `dyn` are deprecated
--> $DIR/dyn-angle-brackets.rs:15:10
|
LL | <fmt::Debug>::fmt(self, f)
| ^^^^^^^^^^ help: use `dyn`: `dyn fmt::Debug`
|
= warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
error: aborting due to 2 previous errors