rust/src/librustc/middle
bors 0ae4b97c09 auto merge of #15029 : aturon/rust/stability-index, r=brson
This commit makes several changes to the stability index infrastructure:

* Stability levels are now inherited lexically, i.e., each item's
  stability level becomes the default for any nested items.

* The computed stability level for an item is stored as part of the
  metadata. When using an item from an external crate, this data is
  looked up and cached.

* The stability lint works from the computed stability level, rather
  than manual stability attribute annotations. However, the lint still
  checks only a limited set of item uses (e.g., it does not check every
  component of a path on import). This will be addressed in a later PR,
  as part of issue #8962.

* The stability lint only applies to items originating from external
  crates, since the stability index is intended as a promise to
  downstream crates.

* The "experimental" lint is now _allow_ by default. This is because
  almost all existing crates have been marked "experimental", pending
  library stabilization. With inheritance in place, this would generate
  a massive explosion of warnings for every Rust program.

  The lint should be changed back to deny-by-default after library
  stabilization is complete.

* The "deprecated" lint still warns by default.

The net result: we can begin tracking stability index for the standard
libraries as we stabilize, without impacting most clients.

Closes #13540.
2014-06-21 04:01:25 +00:00
..
borrowck Merge conflicts from the rollup 2014-06-18 17:23:03 -07:00
cfg middle::cfg code cleanup. 2014-06-18 16:41:52 +02:00
save
trans Add support for fixed size vectors in let/arg patterns 2014-06-20 17:08:57 +02:00
typeck Address review comments 2014-06-20 17:41:19 +02:00
astencode.rs librustc: Don't overwrite vtables when coercing to trait object. 2014-06-17 23:47:17 -04:00
check_const.rs
check_loop.rs
check_match.rs Address review comments 2014-06-20 17:41:19 +02:00
check_static.rs
const_eval.rs Add a b"xx" byte string literal of type &'static [u8]. 2014-06-17 23:43:18 +02:00
dataflow.rs Ensure dataflow of a proc never looks at blocks from closed-over context. 2014-06-18 16:41:53 +02:00
dead.rs
def.rs
dependency_format.rs
effect.rs
entry.rs
expr_use_visitor.rs auto merge of #14830 : luqmana/rust/cmtrttcbctto, r=nikomatsakis 2014-06-19 09:26:24 +00:00
freevars.rs
graph.rs Revise dataflow to do a cfg-driven walk. 2014-06-18 16:38:23 +02:00
intrinsicck.rs
kind.rs Remove TraitStore from ty_trait 2014-06-18 10:30:33 +12:00
lang_items.rs
lint.rs Add stability inheritance 2014-06-18 22:22:26 -07:00
liveness.rs Fix FIXME #5275 2014-06-18 17:01:56 -07:00
mem_categorization.rs auto merge of #14830 : luqmana/rust/cmtrttcbctto, r=nikomatsakis 2014-06-19 09:26:24 +00:00
pat_util.rs
privacy.rs
reachable.rs
region.rs
resolve_lifetime.rs
resolve.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
stability.rs Add stability inheritance 2014-06-18 22:22:26 -07:00
subst.rs
ty_fold.rs Remove TraitStore from ty_trait 2014-06-18 10:30:33 +12:00
ty.rs auto merge of #15029 : aturon/rust/stability-index, r=brson 2014-06-21 04:01:25 +00:00
weak_lang_items.rs