//@ edition:2021 | |
#![allow(bare_trait_objects)] | |
trait A: Sized { | |
fn f(a: dyn A) -> dyn A; | |
//~^ 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(a: dyn B) -> dyn B; | |
//~^ 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, a: dyn C) -> dyn C; | |
} | |
fn main() {} |