1 // compile-flags: -Cdebuginfo=2
4 // Regression test for #87142
5 // This test needs the above flags and the "lib" crate type.
7 #![feature(type_alias_impl_trait, generator_trait, generators)]
10 use std::ops::Generator;
12 pub trait GeneratorProviderAlt: Sized {
13 type Gen: Generator<(), Return = (), Yield = ()>;
15 fn start(ctx: Context<Self>) -> Self::Gen;
18 pub struct Context<G: 'static + GeneratorProviderAlt> {
19 pub link: Box<G::Gen>,
22 impl GeneratorProviderAlt for () {
23 type Gen = impl Generator<(), Return = (), Yield = ()>;
24 fn start(ctx: Context<Self>) -> Self::Gen {