blob: d536c240239283369480f9ecb2f1631405cf48ca (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 | // Check that functions cannot be used as const parameters.
//@ revisions: min adt_const_params full
#![cfg_attr(full, feature(adt_const_params, unsized_const_params))]
#![cfg_attr(full, allow(incomplete_features))]
#![cfg_attr(adt_const_params, feature(adt_const_params))]
#![cfg_attr(adt_const_params, allow(incomplete_features))]
fn function() -> u32 {
    17
}
struct Wrapper<const F: fn() -> u32>; //~ ERROR: using function pointers as const generic parameters
impl<const F: fn() -> u32> Wrapper<F> {
    //~^ ERROR: using function pointers as const generic parameters
    fn call() -> u32 {
        F()
    }
}
fn main() {
    assert_eq!(Wrapper::<function>::call(), 17);
}
 |