1. 05 3月, 2015 2 次提交
    • H
      Add more debugging to syntax::feature_gate. · 10426f69
      Huon Wilson 提交于
      10426f69
    • H
      Add #[allow_internal_unstable] to track stability for macros better. · 84b060ce
      Huon Wilson 提交于
      Unstable items used in a macro expansion will now always trigger
      stability warnings, *unless* the unstable items are directly inside a
      macro marked with `#[allow_internal_unstable]`. IOW, the compiler warns
      unless the span of the unstable item is a subspan of the definition of a
      macro marked with that attribute.
      
      E.g.
      
          #[allow_internal_unstable]
          macro_rules! foo {
              ($e: expr) => {{
                  $e;
                  unstable(); // no warning
                  only_called_by_foo!();
              }}
          }
      
          macro_rules! only_called_by_foo {
              () => { unstable() } // warning
          }
      
          foo!(unstable()) // warning
      
      The unstable inside `foo` is fine, due to the attribute. But the
      `unstable` inside `only_called_by_foo` is not, since that macro doesn't
      have the attribute, and the `unstable` passed into `foo` is also not
      fine since it isn't contained in the macro itself (that is, even though
      it is only used directly in the macro).
      
      In the process this makes the stability tracking much more precise,
      e.g. previously `println!("{}", unstable())` got no warning, but now it
      does. As such, this is a bug fix that may cause [breaking-change]s.
      
      The attribute is definitely feature gated, since it explicitly allows
      side-stepping the feature gating system.
      84b060ce
  2. 03 3月, 2015 3 次提交
  3. 26 2月, 2015 1 次提交
  4. 25 2月, 2015 1 次提交
  5. 24 2月, 2015 2 次提交
  6. 19 2月, 2015 2 次提交
  7. 17 2月, 2015 3 次提交
  8. 16 2月, 2015 5 次提交
  9. 13 2月, 2015 2 次提交
  10. 11 2月, 2015 4 次提交
  11. 10 2月, 2015 1 次提交
    • K
      Use a crate attribute to load plugins · 93b642d9
      Keegan McAllister 提交于
          #[plugin] #[no_link] extern crate bleh;
      
      becomes a crate attribute
      
          #![plugin(bleh)]
      
      The feature gate is still required.
      
      It's almost never correct to link a plugin into the resulting library /
      executable, because it will bring all of libsyntax and librustc with it.
      However if you really want this behavior, you can get it with a separate
      `extern crate` item in addition to the `plugin` attribute.
      
      Fixes #21043.
      Fixes #20769.
      
      [breaking-change]
      93b642d9
  12. 08 2月, 2015 1 次提交
  13. 06 2月, 2015 3 次提交
  14. 05 2月, 2015 2 次提交
    • B
      Add a lint for writing `#[feature]` for stable features, warn by default. · 456d23e7
      Brian Anderson 提交于
      The 'stable_features' lint helps people progress from unstable to
      stable Rust by telling them when they no longer need a `feature`
      attribute because upstream Rust has declared it stable.
      
      This compares to the existing 'unstable_features', which is used
      to implement feature staging, and triggers on *any* use
      of `#[feature]`.
      456d23e7
    • J
      Fix for misspelled comments. · dc2e444e
      Joseph Crail 提交于
      The spelling corrections were made in both documentation comments and
      regular comments.
      dc2e444e
  15. 04 2月, 2015 1 次提交
  16. 03 2月, 2015 1 次提交
  17. 31 1月, 2015 1 次提交
  18. 29 1月, 2015 1 次提交
  19. 27 1月, 2015 1 次提交
  20. 23 1月, 2015 1 次提交
  21. 22 1月, 2015 2 次提交