//@ check-pass // Make sure that object safety checking doesn't freak out when // we have impossible-to-satisfy `DispatchFromDyn` predicates. #![feature(dispatch_from_dyn)] #![feature(arbitrary_self_types)] use std::ops::Deref; use std::ops::DispatchFromDyn; trait Trait> where for<'a> &'a T: DispatchFromDyn<&'a T>, { fn foo(self: &T) -> Box>; } fn main() {}