summaryrefslogtreecommitdiffstats
path: root/tests/ui/traits/new-solver/pointee.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:20:29 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:20:29 +0000
commit631cd5845e8de329d0e227aaa707d7ea228b8f8f (patch)
treea1b87c8f8cad01cf18f7c5f57a08f102771ed303 /tests/ui/traits/new-solver/pointee.rs
parentAdding debian version 1.69.0+dfsg1-1. (diff)
downloadrustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.tar.xz
rustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.zip
Merging upstream version 1.70.0+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/traits/new-solver/pointee.rs')
-rw-r--r--tests/ui/traits/new-solver/pointee.rs18
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 fa6ee2e2d..93c0542ac 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() {}