summaryrefslogtreecommitdiffstats
path: root/tests/ui/type-alias-impl-trait/issue-53678-generator-and-const-fn.rs
blob: a3f126d56cf204c6cc704a636b389d85d73ef99f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#![feature(generators, generator_trait, rustc_attrs)]
#![feature(type_alias_impl_trait)]

use std::ops::Generator;

type GenOnce<Y, R> = impl Generator<Yield = Y, Return = R>;

const fn const_generator<Y, R>(yielding: Y, returning: R) -> GenOnce<Y, R> {
    move || {
        yield yielding;

        return returning;
    }
}

const FOO: GenOnce<usize, usize> = const_generator(10, 100);

#[rustc_error]
fn main() {} //~ ERROR