mirror of
https://github.com/rust-lang/rust.git
synced 2025-05-01 20:47:36 +00:00
20 lines
410 B
Rust
20 lines
410 B
Rust
![]() |
//@ 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<T: Deref<Target = Self>>
|
||
|
where
|
||
|
for<'a> &'a T: DispatchFromDyn<&'a T>,
|
||
|
{
|
||
|
fn foo(self: &T) -> Box<dyn Trait<T>>;
|
||
|
}
|
||
|
|
||
|
fn main() {}
|