1. 26 4月, 2018 24 次提交
  2. 25 4月, 2018 16 次提交
    • B
      Auto merge of #49321 - ishitatsuyuki:compile-pass, r=alexcrichton · 25749ad6
      bors 提交于
      Introduce compile-pass
      
      r? @alexcrichton
      
      The plan is to move things that cannot fail (no assert, unwrap, etc) out so we don't have to run them, and in the long term we can also stop running LLVM for them.
      
      Out of 3215 tests...
      
      ```
      Language            Files        Lines         Code     Comments       Blanks
      Rust                 3215       119254        64688        35135        19431
      ```
      
      16% of them has an empty main (which is already moved in this PR).
      
      ```
      grep -rnPzl 'fn main\(\)\s*{\s*}' | xargs rg --files-without-match cfg | wc -l
      547
      ```
      
      And only 50% of the tests contains assertions:
      
      ```
      rg -e assert -e unwrap -e expect -e panic -l | wc -l
      1600
      ```
      
      The remainder is likely able to get moved, but they need check by a human so I didn't touch them in PR.
      
      cc @rust-lang/compiler
      
      * [ ] Update documentation
      25749ad6
    • R
      Added missing `.` in docs. · 1bcb2676
      Ralf Biedert 提交于
      1bcb2676
    • B
      Auto merge of #50134 - andjo403:jobserver, r=michaelwoerister · 81135c9d
      bors 提交于
      make rustdoc test follow the jobserver limit of threads
      
      fix that to many threads is executing at the same time
      when rustdoc test is executed.
      81135c9d
    • J
      Move the Lock into OpenTask · 3f802ee8
      John Kåre Alsaker 提交于
      3f802ee8
    • J
      Address comments · 8ec629b3
      John Kåre Alsaker 提交于
      8ec629b3
    • J
      Make DepGraph thread-safe · 64b5d408
      John Kåre Alsaker 提交于
      64b5d408
    • B
      Auto merge of #50110 - oli-obk:warn_all_the_constants, r=estebank · 5ec6637c
      bors 提交于
      Warn on all erroneous constants
      
      fixes #49791
      fixes #47054
      
      @Zoxc this PR triggers the nondeterministic errors of https://github.com/rust-lang/rust/pull/49950#issuecomment-383074959 really often (at least on stage1).
      5ec6637c
    • T
      compiletest: introduce skip-trans · 00bc634f
      Tatsuyuki Ishi 提交于
      00bc634f
    • G
      Some JS improvements · ac0f99c0
      Guillaume Gomez 提交于
      ac0f99c0
    • B
      Auto merge of #50106 - nnethercote:nearest_common_ancestor, r=nikomatsakis · cc794209
      bors 提交于
      Speed up `nearest_common_ancestor`.
      
      `nearest_common_ancestor` can be made faster.
      
      Here are all the benchmarks where one of the measurements improved by at least 1%.
      ```
      clap-rs-check
      	avg: -4.5%	min: -8.8%	max: -0.3%
      clap-rs
      	avg: -2.6%	min: -4.5%	max: 0.5%
      script-servo
      	avg: -1.7%	min: -3.6%	max: 0.0%
      regression-31157
      	avg: -1.5%	min: -2.6%	max: -0.4%
      hyper
      	avg: -1.2%	min: -2.5%	max: -0.0%
      piston-image
      	avg: -1.6%	min: -2.5%	max: 0.1%
      regex
      	avg: -1.2%	min: -2.2%	max: 0.0%
      issue-46449
      	avg: -1.8%	min: -2.1%	max: -0.7%
      crates.io
      	avg: -1.2%	min: -2.1%	max: 0.0%
      hyper-check
      	avg: -1.0%	min: -2.1%	max: -0.1%
      clap-rs-opt
      	avg: -1.4%	min: -2.0%	max: -0.3%
      piston-image-check
      	avg: -1.2%	min: -1.9%	max: -0.1%
      regex-check
      	avg: -0.5%	min: -1.8%	max: -0.1%
      syn
      	avg: -1.1%	min: -1.7%	max: -0.1%
      tokio-webpush-simple-check
      	avg: -1.1%	min: -1.6%	max: -0.3%
      tokio-webpush-simple
      	avg: -1.2%	min: -1.6%	max: -0.0%
      helloworld-check
      	avg: -1.4%	min: -1.6%	max: -1.2%
      deeply-nested
      	avg: -1.2%	min: -1.4%	max: -0.8%
      encoding-check
      	avg: -0.8%	min: -1.3%	max: -0.3%
      unify-linearly-check
      	avg: -1.0%	min: -1.3%	max: -0.8%
      script-servo-check
      	avg: -0.6%	min: -1.3%	max: 0.0%
      regression-31157-check
      	avg: -0.9%	min: -1.2%	max: -0.7%
      script-servo-opt
      	avg: -0.5%	min: -1.2%	max: 0.1%
      deeply-nested-check
      	avg: -0.8%	min: -1.2%	max: -0.7%
      encoding
      	avg: -0.7%	min: -1.1%	max: -0.3%
      issue-46449-check
      	avg: -0.9%	min: -1.1%	max: -0.6%
      parser-check
      	avg: -0.9%	min: -1.1%	max: -0.8%
      html5ever
      	avg: -0.5%	min: -1.0%	max: -0.0%
      ```
      cc794209
    • B
      Auto merge of #50100 - Manishearth:edition-path-lint, r=nikomatsakis · 432fe0ce
      bors 提交于
      Edition breakage lint for absolute paths starting with modules
      
      We plan to enable `extern_absolute_paths` in the 2018 edition. To allow for that, folks must transition their paths in a previous edition to the new one. This makes paths which import module contents via `use module::` or `::module::` obsolete, and we must edition-lint these.
      
      https://internals.rust-lang.org/t/the-great-module-adventure-continues/6678/205?u=manishearth is the current plan for paths.
      
      r? @nikomatsakis
      
      Fixes #48722
      432fe0ce
    • W
      Hash EntryKind::AssociatedConst const data · d81d081d
      Wesley Wiser 提交于
      Related to #49991
      d81d081d
    • T
      Remove methods with implicit Binder::skip_bound · 9ffe9bea
      Tyler Mandry 提交于
      Fixes #20664.
      9ffe9bea
    • T
      Make Binder's field private and clean up its usage · 98546f8b
      Tyler Mandry 提交于
      98546f8b
    • B
      Auto merge of #49986 - zofrex:better-derived-argument-names, r=Manishearth · 0c5740fe
      bors 提交于
      Provide better names for builtin deriving-generated attributes
      
      First attempt at fixing #49967
      
      Not in love with any choices here, don't be shy if you aren't happy with anything :)
      
      I've tested that this produces nicer names in documentation, and that it no longer has issues conflicting with constants with the same name. (I guess we _could_ make a test for that... unsure if that would be valuable)
      
      In all cases I took the names from the methods as declared in the relevant trait.
      
      In some cases I had to prepend the names with _ otherwise there were errors about un-used variables. I'm uneasy with the inconsistency... do they all need to be like that? Is there a way to generate an alternate impl or use a different name (`_`?) in the cases where the arguments are not used?
      
      Lastly the gensym addition to Ident I implemented largely as suggested, but I want to point out it's a little circuitous (at least, as far as I understand it). `cx.ident_of(name)` is just `Ident::from_str`, so we create an Ident then another Ident from it. `Ident::with_empty_ctxt(Symbol::gensym(string))` may or may not be equivalent, I don't know if it's important to intern it _then_ gensym it. It seems like either we could use that, or if we do want a new method to make this convenient, it could be on Ident instead (`from_str_gensymed`?)
      0c5740fe
    • J
      Test format hygiene · d6feab6f
      James Sanderson 提交于
      d6feab6f