| //@ revisions: imported unimported | |
| //@[imported] check-pass | |
| mod private { | |
| pub trait Future { | |
| //[unimported]~^^ HELP perhaps add a `use` for it | |
| fn wait(&self) where Self: Sized; | |
| } | |
| impl Future for Box<dyn Future> { | |
| fn wait(&self) { } | |
| } | |
| } | |
| #[cfg(imported)] | |
| use private::Future; | |
| fn bar(arg: Box<dyn private::Future>) { | |
| // Importing the trait means that we don't autoderef `Box<dyn Future>` | |
| arg.wait(); | |
| //[unimported]~^ ERROR the `wait` method cannot be invoked on a trait object | |
| } | |
| fn main() {} |