1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
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
//~| 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
//~| 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
//~| 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
//~| 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
//~| WARN trait objects without an explicit `dyn` are deprecated
//~| WARN this is accepted in the current edition
}
|