//@ compile-flags: --diagnostic-width=40 | |
//@ normalize-stderr-test: "long-type-\d+" -> "long-type-hash" | |
trait Future { | |
type Error; | |
} | |
impl<T, E> Future for Result<T, E> { | |
type Error = E; | |
} | |
impl<T> Future for Option<T> { | |
type Error = (); | |
} | |
struct Foo; | |
fn foo() -> Box<dyn Future<Error=Foo>> { | |
Box::new( //~ ERROR E0271 | |
Ok::<_, ()>( | |
Err::<(), _>( | |
Ok::<_, ()>( | |
Err::<(), _>( | |
Ok::<_, ()>( | |
Err::<(), _>(Some(5)) | |
) | |
) | |
) | |
) | |
) | |
) | |
} | |
fn main() { | |
} |