diff options
Diffstat (limited to 'src/test/ui/impl-trait/issues/issue-83919.rs')
-rw-r--r-- | src/test/ui/impl-trait/issues/issue-83919.rs | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/src/test/ui/impl-trait/issues/issue-83919.rs b/src/test/ui/impl-trait/issues/issue-83919.rs deleted file mode 100644 index e76443a65..000000000 --- a/src/test/ui/impl-trait/issues/issue-83919.rs +++ /dev/null @@ -1,32 +0,0 @@ -#![feature(type_alias_impl_trait)] - -// edition:2021 - -use std::future::Future; - -trait Foo { - type T; - type Fut2: Future<Output=Self::T>; // ICE got triggered with traits other than Future here - type Fut: Future<Output=Self::Fut2>; - fn get_fut(&self) -> Self::Fut; -} - -struct Implementor; - -impl Foo for Implementor { - type T = u64; - type Fut2 = impl Future<Output=u64>; - type Fut = impl Future<Output=Self::Fut2>; - - fn get_fut(&self) -> Self::Fut { - //~^ ERROR `{integer}` is not a future - async move { - 42 - // 42 does not impl Future and rustc does actually point out the error, - // but rustc used to panic. - // Putting a valid Future here always worked fine. - } - } -} - -fn main() {} |