summaryrefslogtreecommitdiffstats
path: root/src/test/ui/generic-associated-types/bugs/issue-91762.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/generic-associated-types/bugs/issue-91762.rs')
-rw-r--r--src/test/ui/generic-associated-types/bugs/issue-91762.rs29
1 files changed, 0 insertions, 29 deletions
diff --git a/src/test/ui/generic-associated-types/bugs/issue-91762.rs b/src/test/ui/generic-associated-types/bugs/issue-91762.rs
deleted file mode 100644
index dec668bec..000000000
--- a/src/test/ui/generic-associated-types/bugs/issue-91762.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-// check-fail
-// known-bug
-
-// We almost certainly want this to pass, but
-// it's particularly difficult currently, because we need a way of specifying
-// that `<Self::Base as Functor>::With<T> = Self` without using that when we have
-// a `U`. See `https://github.com/rust-lang/rust/pull/92728` for a (hacky)
-// solution. This might be better to just wait for Chalk.
-
-pub trait Functor {
- type With<T>;
-
- fn fmap<T, U>(this: Self::With<T>) -> Self::With<U>;
-}
-
-pub trait FunctorExt<T>: Sized {
- type Base: Functor<With<T> = Self>;
-
- fn fmap<U>(self) {
- let arg: <Self::Base as Functor>::With<T>;
- let ret: <Self::Base as Functor>::With<U>;
-
- arg = self;
- ret = <Self::Base as Functor>::fmap(arg);
- //~^ type annotations needed
- }
-}
-
-fn main() {}