error[E0599]: no method named `owned` found for type `&dyn Foo` in the current scope --> $DIR/object-pointer-types.rs:22:7 | LL | x.owned(); //~ ERROR no method named `owned` found | ^^^^^ | = help: items from traits can only be used if the trait is implemented and in scope = note: the following trait defines an item `owned`, perhaps you need to implement it: candidate #1: `Foo` error[E0599]: no method named `owned` found for type `&mut dyn Foo` in the current scope --> $DIR/object-pointer-types.rs:28:7 | LL | x.owned(); //~ ERROR no method named `owned` found | ^^^^^ | = help: items from traits can only be used if the trait is implemented and in scope = note: the following trait defines an item `owned`, perhaps you need to implement it: candidate #1: `Foo` error[E0599]: no method named `managed` found for type `std::boxed::Box<(dyn Foo + 'static)>` in the current scope --> $DIR/object-pointer-types.rs:34:7 | LL | x.managed(); //~ ERROR no method named `managed` found | ^^^^^^^ error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0599`.