#![feature(generators, generator_trait, rustc_attrs)] #![feature(type_alias_impl_trait)] // check-pass mod gen { use std::ops::Generator; pub type GenOnce = impl Generator; pub const fn const_generator(yielding: Y, returning: R) -> GenOnce { move || { yield yielding; return returning; } } } const FOO: gen::GenOnce = gen::const_generator(10, 100); fn main() {}