diff options
| author | Michael Goulet <michael@errs.io> | 2023-03-30 00:52:58 +0000 |
|---|---|---|
| committer | Michael Goulet <michael@errs.io> | 2023-03-30 00:53:17 +0000 |
| commit | 321a5dba9ee42e2950bbff14c7dfb38e07d21bc4 (patch) | |
| tree | 53ad5482dc16a0b568636d31f12942824ba1ed19 /tests | |
| parent | f5c78c4d3a9ab8d7b8726540715cc2abfbea0eba (diff) | |
| download | rust-321a5dba9ee42e2950bbff14c7dfb38e07d21bc4.tar.gz rust-321a5dba9ee42e2950bbff14c7dfb38e07d21bc4.zip | |
Check pointee metadata correctly in ui test
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/ui/traits/new-solver/pointee.rs | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/tests/ui/traits/new-solver/pointee.rs b/tests/ui/traits/new-solver/pointee.rs index fa6ee2e2daf..93c0542ace4 100644 --- a/tests/ui/traits/new-solver/pointee.rs +++ b/tests/ui/traits/new-solver/pointee.rs @@ -7,17 +7,15 @@ use std::ptr::{DynMetadata, Pointee}; trait Trait<U> {} struct MyDst<T: ?Sized>(T); -fn works<T>() { - let _: <T as Pointee>::Metadata = (); - let _: <[T] as Pointee>::Metadata = 1_usize; - let _: <str as Pointee>::Metadata = 1_usize; - let _: <dyn Trait<T> as Pointee>::Metadata = give::<DynMetadata<dyn Trait<T>>>(); - let _: <MyDst<T> as Pointee>::Metadata = (); - let _: <((((([u8],),),),),) as Pointee>::Metadata = 1_usize; -} +fn meta_is<T: Pointee<Metadata = U> + ?Sized, U>() {} -fn give<U>() -> U { - loop {} +fn works<T>() { + meta_is::<T, ()>(); + meta_is::<[T], usize>(); + meta_is::<str, usize>(); + meta_is::<dyn Trait<T>, DynMetadata<dyn Trait<T>>>(); + meta_is::<MyDst<T>, ()>(); + meta_is::<((((([u8],),),),),), usize>(); } fn main() {} |
