about summary refs log tree commit diff
path: root/tests/ui/traits/const-traits/std-impl-gate.rs
blob: d29bccf17c9ab236cf0c15bcbc0c3def755842f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// This tests feature gates for const impls in the standard library.

//@ revisions: stock gated
//@[gated] run-pass

#![cfg_attr(gated, feature(const_trait_impl, const_default))]

fn non_const_context() -> Vec<usize> {
    Default::default()
}

const fn const_context() -> Vec<usize> {
    Default::default()
    //[stock]~^ ERROR cannot call conditionally-const associated function
    //[stock]~| ERROR `Default` is not yet stable as a const trait
}

fn main() {
    const VAL: Vec<usize> = const_context();

    assert_eq!(VAL, non_const_context());
}