]> git.lizzy.rs Git - rust.git/blob - src/test/ui/stability-attribute/missing-const-stability.rs
Permit `#[deprecated]` in stdlib
[rust.git] / src / test / ui / stability-attribute / missing-const-stability.rs
1 #![feature(staged_api)]
2 #![feature(const_trait_impl)]
3 #![stable(feature = "stable", since = "1.0.0")]
4
5 #[stable(feature = "stable", since = "1.0.0")]
6 pub const fn foo() {} //~ ERROR function has missing const stability attribute
7
8 #[unstable(feature = "unstable", issue = "none")]
9 pub const fn bar() {} // ok because function is unstable
10
11 #[stable(feature = "stable", since = "1.0.0")]
12 pub struct Foo;
13 impl Foo {
14     #[stable(feature = "stable", since = "1.0.0")]
15     pub const fn foo() {} //~ ERROR associated function has missing const stability attribute
16
17     #[unstable(feature = "unstable", issue = "none")]
18     pub const fn bar() {} // ok because function is unstable
19 }
20
21 // FIXME Once #![feature(const_trait_impl)] is allowed to be stable, add a test
22 // for const trait impls. Right now, a "trait methods cannot be stable const fn"
23 // error is emitted. This occurs prior to the lint being tested here, such that
24 // the lint cannot currently be tested on this use case.
25
26 fn main() {}