Add regresion test for #87142
This commit is contained in:
parent
4a52e0fd7d
commit
7026845706
32
src/test/ui/generator/issue-87142.rs
Normal file
32
src/test/ui/generator/issue-87142.rs
Normal file
@ -0,0 +1,32 @@
|
||||
// compile-flags: -Cdebuginfo=2
|
||||
// build-pass
|
||||
|
||||
// Regression test for #87142
|
||||
// This test needs the above flags and the "lib" crate type.
|
||||
|
||||
#![feature(type_alias_impl_trait, generator_trait, generators)]
|
||||
#![crate_type = "lib"]
|
||||
|
||||
use std::ops::Generator;
|
||||
|
||||
pub trait GeneratorProviderAlt: Sized {
|
||||
type Gen: Generator<(), Return = (), Yield = ()>;
|
||||
|
||||
fn start(ctx: Context<Self>) -> Self::Gen;
|
||||
}
|
||||
|
||||
pub struct Context<G: 'static + GeneratorProviderAlt> {
|
||||
pub link: Box<G::Gen>,
|
||||
}
|
||||
|
||||
impl GeneratorProviderAlt for () {
|
||||
type Gen = impl Generator<(), Return = (), Yield = ()>;
|
||||
fn start(ctx: Context<Self>) -> Self::Gen {
|
||||
move || {
|
||||
match ctx {
|
||||
_ => (),
|
||||
}
|
||||
yield ();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user