mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-24 07:44:10 +00:00
26 lines
960 B
Rust
26 lines
960 B
Rust
//@ edition:2021
|
|
#![allow(bare_trait_objects)]
|
|
trait A: Sized {
|
|
fn f(a: A) -> A;
|
|
//~^ ERROR trait objects must include the `dyn` keyword
|
|
//~| ERROR trait objects must include the `dyn` keyword
|
|
//~| ERROR associated item referring to unboxed trait object for its own trait
|
|
//~| ERROR the trait `A` cannot be made into an object
|
|
}
|
|
trait B {
|
|
fn f(b: B) -> B;
|
|
//~^ ERROR trait objects must include the `dyn` keyword
|
|
//~| ERROR trait objects must include the `dyn` keyword
|
|
//~| ERROR associated item referring to unboxed trait object for its own trait
|
|
//~| ERROR the trait `B` cannot be made into an object
|
|
}
|
|
trait C {
|
|
fn f(&self, c: C) -> C;
|
|
//~^ ERROR trait objects must include the `dyn` keyword
|
|
//~| ERROR trait objects must include the `dyn` keyword
|
|
//~| ERROR associated item referring to unboxed trait object for its own trait
|
|
//~| ERROR the trait `C` cannot be made into an object
|
|
}
|
|
|
|
fn main() {}
|