#![crate_name = "alloc"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
#![crate_name = "arena"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![crate_name = "collections"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
#![crate_name = "core"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
#![crate_name = "flate"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![allow(unknown_features)] #![feature(int_uint)]
#![feature(unnamed_feature)]
#![crate_name = "fmt_macros"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![crate_name = "getopts"]
#![unstable(feature = "unnamed_feature",
reason = "use the crates.io `getopts` library instead")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![crate_name = "graphviz"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![cfg_attr(not(feature = "cargo-build"),
unstable(feature = "unnamed_feature"))]
+#![cfg_attr(not(feature = "cargo-build"), feature(staged_api))]
#![cfg_attr(not(feature = "cargo-build"), staged_api)]
#![cfg_attr(not(feature = "cargo-build"), feature(unnamed_feature))]
#![allow(unknown_features)] #![feature(int_uint)]
#![crate_name = "log"]
#![unstable(feature = "unnamed_feature",
reason = "use the crates.io `log` library instead")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![allow(unknown_features)] #![feature(int_uint)]
#![no_std]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#[macro_use]
#![crate_name = "rbml"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![crate_type = "dylib"]
#![unstable(feature = "unnamed_feature",
reason = "use the crates.io `regex` library instead")]
+#![feature(staged_api)]
#![staged_api]
#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
html_favicon_url = "http://www.rust-lang.org/favicon.ico",
#![crate_name = "rustc"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
/// A stability index, giving the stability level for items and methods.
pub struct Index {
- // Indicates whether this crate has #![staged_api]
+ // Indicates whether this crate has #![feature(staged_api)]
staged_api: bool,
// stability for crate-local items; unmarked stability == no entry
local: NodeMap<Stability>,
#![crate_name = "rustc_back"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
// except according to those terms.
#![crate_name = "rustc_bitflags"]
+#![allow(unknown_features)]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![no_std]
#![crate_name = "rustc_borrowck"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "rustc_driver"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "rustc_llvm"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "rustc_privacy"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "rustc_resolve"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "rustc_trans"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "rustc_typeck"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "rustdoc"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "serialize"]
#![unstable(feature = "unnamed_feature",
reason = "deprecated in favor of rustc-serialize on crates.io")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![crate_name = "std"]
#![stable(feature = "grandfathered", since = "1.0.0")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
// mean anything
("test_accepted_feature", "1.0.0", Accepted),
("test_removed_feature", "1.0.0", Removed),
+
+ // Allows use of #[staged_api]
+ ("staged_api", "1.0.0", Active),
];
enum Status {
}
fn visit_attribute(&mut self, attr: &ast::Attribute) {
+ if attr.check_name("staged_api") {
+ self.gate_feature("staged_api", attr.span,
+ "staged_api is for use by rustc only");
+ }
+
if attr::contains_name(slice::ref_slice(attr), "lang") {
self.gate_feature("lang_items",
attr.span,
#![crate_name = "syntax"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "dylib"]
#![crate_type = "rlib"]
#![crate_name = "term"]
#![unstable(feature = "unnamed_feature",
reason = "use the crates.io `term` library instead")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![crate_name = "test"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![crate_type = "dylib"]
#![crate_name = "unicode"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
#![crate_type = "rlib"]
#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
#![crate_name="inherited_stability"]
#![crate_type = "lib"]
#![unstable(feature = "unnamed_feature")]
+#![feature(staged_api)]
#![staged_api]
pub fn unstable() {}
#![crate_name="lint_output_format"]
#![crate_type = "lib"]
+#![feature(staged_api)]
#![staged_api]
#![unstable(feature = "unnamed_feature")]
// except according to those terms.
#![crate_name="lint_stability"]
#![crate_type = "lib"]
+#![feature(staged_api)]
#![staged_api]
#[deprecated(feature = "oldstuff", since = "1.0.0")]
#![cfg_attr(foo, experimental)]
#![cfg_attr(not(foo), stable(feature = "unnamed_feature", since = "1.0.0"))]
+#![feature(staged_api)]
#![staged_api]
#![cfg_attr(foo, unstable(feature = "unnamed_feature"))]
#![cfg_attr(not(foo), stable(feature = "unnamed_feature", since = "1.0.0"))]
+#![feature(staged_api)]
#![staged_api]
// option. This file may not be copied, modified, or distributed
// except according to those terms.
+#![feature(staged_api)]
#![staged_api]
#![deny(deprecated)]
// compile-flags: -F deprecated
+#![feature(staged_api)]
#![staged_api]
#[allow(deprecated)] //~ ERROR allow(deprecated) overruled by outer forbid(deprecated)
fn main() {
#![deny(deprecated)]
#![allow(dead_code)]
+#![feature(staged_api)]
#![staged_api]
#[macro_use]
--- /dev/null
+// Copyright 2015 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+#![staged_api] //~ ERROR staged_api is for use by rustc only
+
+fn main() { }