File tree 3 files changed +64
-0
lines changed
tests/ui/stability-attribute
3 files changed +64
-0
lines changed Original file line number Diff line number Diff line change
1
+ //! definitions for ../mixed-levels.rs
2
+
3
+ #![ stable( feature = "stable_feature" , since = "1.0.0" ) ]
4
+ #![ feature( staged_api) ]
5
+ #![ crate_type = "lib" ]
6
+
7
+ #[ stable( feature = "stable_a" , since = "1.0.0" ) ]
8
+ #[ stable( feature = "stable_b" , since = "1.8.2" ) ]
9
+ #[ macro_export]
10
+ macro_rules! stable_mac {
11
+ ( ) => ( )
12
+ }
13
+
14
+ #[ unstable( feature = "unstable_a" , issue = "none" ) ]
15
+ #[ stable( feature = "stable_a" , since = "1.0.0" ) ]
16
+ #[ macro_export]
17
+ macro_rules! unstable_mac {
18
+ ( ) => ( )
19
+ }
20
+
21
+ #[ stable( feature = "stable_feature" , since = "1.0.0" ) ]
22
+ #[ rustc_const_stable( feature = "stable_c" , since = "1.8.2" ) ]
23
+ #[ rustc_const_stable( feature = "stable_d" , since = "1.0.0" ) ]
24
+ pub const fn const_stable_fn ( ) { }
25
+
26
+ #[ stable( feature = "stable_feature" , since = "1.0.0" ) ]
27
+ #[ rustc_const_unstable( feature = "unstable_c" , issue = "none" ) ]
28
+ #[ rustc_const_stable( feature = "stable_c" , since = "1.8.2" ) ]
29
+ pub const fn const_unstable_fn ( ) { }
Original file line number Diff line number Diff line change
1
+ //! Test stability levels for items formerly dependent on multiple unstable features.
2
+ //@ aux-build:mixed-levels.rs
3
+
4
+ extern crate mixed_levels;
5
+
6
+ const USE_STABLE : ( ) = mixed_levels:: const_stable_fn ( ) ;
7
+ const USE_UNSTABLE : ( ) = mixed_levels:: const_unstable_fn ( ) ;
8
+ //~^ ERROR `const_unstable_fn` is not yet stable as a const fn
9
+
10
+ fn main ( ) {
11
+ mixed_levels:: stable_mac!( ) ;
12
+ mixed_levels:: unstable_mac!( ) ; //~ ERROR use of unstable library feature `unstable_a` [E0658]
13
+ }
Original file line number Diff line number Diff line change
1
+ error[E0658]: use of unstable library feature `unstable_a`
2
+ --> $DIR/mixed-levels.rs:12:5
3
+ |
4
+ LL | mixed_levels::unstable_mac!();
5
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^
6
+ |
7
+ = help: add `#![feature(unstable_a)]` to the crate attributes to enable
8
+ = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
9
+
10
+ error: `const_unstable_fn` is not yet stable as a const fn
11
+ --> $DIR/mixed-levels.rs:7:26
12
+ |
13
+ LL | const USE_UNSTABLE: () = mixed_levels::const_unstable_fn();
14
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
15
+ |
16
+ = note: use of unstable library feature `unstable_c`
17
+ = help: add `#![feature(unstable_c)]` to the crate attributes to enable
18
+ = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
19
+
20
+ error: aborting due to 2 previous errors
21
+
22
+ For more information about this error, try `rustc --explain E0658`.
You can’t perform that action at this time.
0 commit comments