// Check that we correctly prevent users from making trait objects | |
// from traits with static methods. | |
trait Foo { | |
fn foo() {} | |
} | |
fn diverges() -> Box<dyn Foo> { | |
//~^ ERROR E0038 | |
loop { } | |
} | |
struct Bar; | |
impl Foo for Bar {} | |
fn main() { | |
let b: Box<dyn Foo> = Box::new(Bar); | |
//~^ ERROR E0038 | |
} |