diff options
Diffstat (limited to 'src/test/ui/impl-trait/issues/issue-70877.rs')
| -rw-r--r-- | src/test/ui/impl-trait/issues/issue-70877.rs | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/src/test/ui/impl-trait/issues/issue-70877.rs b/src/test/ui/impl-trait/issues/issue-70877.rs deleted file mode 100644 index 8169cfafac7..00000000000 --- a/src/test/ui/impl-trait/issues/issue-70877.rs +++ /dev/null @@ -1,36 +0,0 @@ -#![feature(type_alias_impl_trait)] - -type FooArg<'a> = &'a dyn ToString; -type FooRet = impl std::fmt::Debug; - -type FooItem = Box<dyn Fn(FooArg) -> FooRet>; -type Foo = impl Iterator<Item = FooItem>; - -#[repr(C)] -struct Bar(u8); - -impl Iterator for Bar { - type Item = FooItem; - - fn next(&mut self) -> Option<Self::Item> { - Some(Box::new(quux)) - } -} - -fn quux(st: FooArg) -> FooRet { - Some(st.to_string()) -} - -fn ham() -> Foo { - Bar(1) -} - -fn oof() -> impl std::fmt::Debug { - let mut bar = ham(); - let func = bar.next().unwrap(); - return func(&"oof"); //~ ERROR opaque type's hidden type cannot be another opaque type -} - -fn main() { - let _ = oof(); -} |
