1 #![feature(const_impl_trait, generators, generator_trait, rustc_attrs)]
2 // revisions: min_tait full_tait
3 #![feature(min_type_alias_impl_trait)]
4 #![cfg_attr(full_tait, feature(impl_trait_in_bindings, type_alias_impl_trait))]
5 //[full_tait]~^ WARN incomplete
6 //[full_tait]~| WARN incomplete
8 use std::ops::Generator;
10 type GenOnce<Y, R> = impl Generator<Yield = Y, Return = R>;
12 const fn const_generator<Y, R>(yielding: Y, returning: R) -> GenOnce<Y, R> {
20 const FOO: GenOnce<usize, usize> = const_generator(10, 100); //[min_tait]~ ERROR not permitted here
23 fn main() {} //[full_tait]~ ERROR