// Allow an unstable re-export without requiring a feature gate. // #94972 //@ aux-build:lint-stability.rs //@ aux-build:lint-stability-reexport.rs #![feature(staged_api)] #![stable(feature = "lint_stability", since = "1.0.0")] extern crate lint_stability; extern crate lint_stability_reexport; #[unstable(feature = "unstable_test_feature", issue = "none")] pub use lint_stability::unstable; // We want to confirm that using a re-export through another crate behaves // the same way as using an item directly #[unstable(feature = "unstable_test_feature", issue = "none")] pub use lint_stability_reexport::unstable_text; // Ensure items which aren't marked as unstable can't re-export unstable items #[stable(feature = "lint_stability", since = "1.0.0")] pub use lint_stability::unstable as unstable2; //~^ ERROR use of unstable library feature `unstable_test_feature` fn main() { // Since we didn't enable the feature in this crate, we still can't // use these items, even though they're in scope from the `use`s which are now allowed. unstable(); //~ ERROR use of unstable library feature `unstable_test_feature` unstable_text(); //~ ERROR use of unstable library feature `unstable_test_feature` }