1 #![feature(unsize, dispatch_from_dyn)]
5 marker::{Unsize, PhantomData},
8 struct WrapperWithExtraField<T>(T, i32);
10 impl<T, U> DispatchFromDyn<WrapperWithExtraField<U>> for WrapperWithExtraField<T>
12 T: DispatchFromDyn<U>,
13 {} //~^^^ ERROR [E0378]
16 struct MultiplePointers<T: ?Sized>{
21 impl<T: ?Sized, U: ?Sized> DispatchFromDyn<MultiplePointers<U>> for MultiplePointers<T>
24 {} //~^^^ ERROR [E0378]
27 struct NothingToCoerce<T: ?Sized> {
31 impl<T: ?Sized, U: ?Sized> DispatchFromDyn<NothingToCoerce<T>> for NothingToCoerce<U> {}
35 struct HasReprC<T: ?Sized>(Box<T>);
37 impl<T: ?Sized, U: ?Sized> DispatchFromDyn<HasReprC<U>> for HasReprC<T>
40 {} //~^^^ ERROR [E0378]
43 struct OverAlignedZst;
44 struct OverAligned<T: ?Sized>(Box<T>, OverAlignedZst);
46 impl<T: ?Sized, U: ?Sized> DispatchFromDyn<OverAligned<U>> for OverAligned<T>
49 {} //~^^^ ERROR [E0378]