20 lines
391 B
Rust
20 lines
391 B
Rust
#![deny(where_clauses_object_safety)]
|
|
|
|
trait Trait {}
|
|
|
|
trait X {
|
|
fn foo(&self) where Self: Trait; //~ ERROR the trait `X` cannot be made into an object
|
|
//~^ WARN this was previously accepted by the compiler but is being phased out
|
|
}
|
|
|
|
impl X for () {
|
|
fn foo(&self) {}
|
|
}
|
|
|
|
impl Trait for dyn X {}
|
|
|
|
pub fn main() {
|
|
// Check that this does not segfault.
|
|
<X as X>::foo(&());
|
|
}
|