rust/tests/ui/traits/unspecified-self-in-trait-r...

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

31 lines
1.1 KiB
Rust
Raw Normal View History

pub trait Foo<A=Self> {
fn foo(&self);
}
pub trait Bar<X=usize, A=Self> {
fn foo(&self);
}
fn main() {
let a = Foo::lol();
//~^ ERROR no function or associated item named
2021-07-10 16:00:54 +08:00
//~| WARN trait objects without an explicit `dyn` are deprecated
//~| WARN this is accepted in the current edition
let b = Foo::<_>::lol();
//~^ ERROR no function or associated item named
2021-07-10 16:00:54 +08:00
//~| WARN trait objects without an explicit `dyn` are deprecated
//~| WARN this is accepted in the current edition
let c = Bar::lol();
//~^ ERROR no function or associated item named
2021-07-10 16:00:54 +08:00
//~| WARN trait objects without an explicit `dyn` are deprecated
//~| WARN this is accepted in the current edition
let d = Bar::<usize, _>::lol();
//~^ ERROR no function or associated item named
2021-07-10 16:00:54 +08:00
//~| WARN trait objects without an explicit `dyn` are deprecated
//~| WARN this is accepted in the current edition
let e = Bar::<usize>::lol();
//~^ ERROR must be explicitly specified
2021-07-10 16:00:54 +08:00
//~| WARN trait objects without an explicit `dyn` are deprecated
//~| WARN this is accepted in the current edition
}