summaryrefslogtreecommitdiffstats
path: root/src/test/ui/impl-trait/issues/issue-62742.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/impl-trait/issues/issue-62742.rs')
-rw-r--r--src/test/ui/impl-trait/issues/issue-62742.rs32
1 files changed, 0 insertions, 32 deletions
diff --git a/src/test/ui/impl-trait/issues/issue-62742.rs b/src/test/ui/impl-trait/issues/issue-62742.rs
deleted file mode 100644
index 041bd0e38..000000000
--- a/src/test/ui/impl-trait/issues/issue-62742.rs
+++ /dev/null
@@ -1,32 +0,0 @@
-use std::marker::PhantomData;
-
-fn _alias_check() {
- WrongImpl::foo(0i32);
- //~^ ERROR the trait bound `RawImpl<_>: Raw<_>` is not satisfied
- WrongImpl::<()>::foo(0i32);
- //~^ ERROR the trait bound `RawImpl<()>: Raw<()>` is not satisfied
- //~| ERROR trait bounds were not satisfied
- CorrectImpl::foo(0i32);
-}
-
-pub trait Raw<T: ?Sized> {
- type Value;
-}
-
-pub type WrongImpl<T> = SafeImpl<T, RawImpl<T>>;
-
-pub type CorrectImpl<T> = SafeImpl<[T], RawImpl<T>>;
-
-pub struct RawImpl<T>(PhantomData<T>);
-
-impl<T> Raw<[T]> for RawImpl<T> {
- type Value = T;
-}
-
-pub struct SafeImpl<T: ?Sized, A: Raw<T>>(PhantomData<(A, T)>);
-
-impl<T: ?Sized, A: Raw<T>> SafeImpl<T, A> {
- pub fn foo(value: A::Value) {}
-}
-
-fn main() {}