1
1
#![ feature( staged_api) ]
2
+ #![ feature( const_trait_impl) ]
2
3
#![ stable( feature = "stable" , since = "1.0.0" ) ]
3
4
4
5
#[ stable( feature = "stable" , since = "1.0.0" ) ]
5
6
pub const fn foo ( ) { } //~ ERROR function has missing const stability attribute
6
7
7
8
#[ unstable( feature = "unstable" , issue = "none" ) ]
8
- pub const fn bar ( ) { } // ok for now
9
+ pub const fn bar ( ) { } // ok because function is unstable
9
10
10
11
#[ stable( feature = "stable" , since = "1.0.0" ) ]
11
12
pub struct Foo ;
@@ -14,11 +15,12 @@ impl Foo {
14
15
pub const fn foo ( ) { } //~ ERROR associated function has missing const stability attribute
15
16
16
17
#[ unstable( feature = "unstable" , issue = "none" ) ]
17
- pub const fn bar ( ) { } // ok for now
18
+ pub const fn bar ( ) { } // ok because function is unstable
18
19
}
19
20
20
- // FIXME When #![feature(const_trait_impl)] is stabilized, add tests for const
21
- // trait impls. Right now, a "trait methods cannot be stable const fn" error is
22
- // emitted, but that's not in the scope of this test.
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.
23
25
24
26
fn main ( ) { }
0 commit comments