1. 02 4月, 2020 13 次提交
    • N
      bootstrap: add `--json-output` for rust-analyzer · e9925658
      Niko Matsakis 提交于
      e9925658
    • B
      Auto merge of #70628 - pietroalbini:gha-multiple-tries, r=Mark-Simulacrum · 0f72ce1b
      bors 提交于
      GHA: enable running multiple try builds at the same time
      
      While for auto, try and PR builds we only want the latest commit to be tested, that's not true for try builds: each commit pushed to the branch is a different PR being tested, and we want multiple PRs to be tested in parallel if there is enough demand.
      
      Fixes #70569
      0f72ce1b
    • B
      Auto merge of #70362 - TimDiekmann:alloc-overhaul, r=Amanieu · 127a11a3
      bors 提交于
      Overhaul of the `AllocRef` trait to match allocator-wg's latest consens; Take 2
      
      GitHub won't let me reopen #69889 so I make a new PR.
      
      In addition to #69889 this fixes the unsoundness of `RawVec::into_box` when using allocators supporting overallocating. Also it uses `MemoryBlock` in `AllocRef` to unify `_in_place` methods by passing `&mut MemoryBlock`. Additionally, `RawVec` now checks for `size_of::<T>()` again and ignore every ZST. The internal capacity of `RawVec` isn't used by ZSTs anymore, as `into_box` now requires a length to be specified.
      
      r? @Amanieu
      
      fixes rust-lang/wg-allocators#38
      fixes rust-lang/wg-allocators#41
      fixes rust-lang/wg-allocators#44
      fixes rust-lang/wg-allocators#51
      127a11a3
    • B
      Auto merge of #70667 - flip1995:clippyup, r=Manishearth · b793f403
      bors 提交于
      Update Clippy
      
      r? @Manishearth
      
      Closes #70663
      b793f403
    • B
      Auto merge of #70672 - Dylan-DPC:rollup-cco9bbd, r=Dylan-DPC · 76b11980
      bors 提交于
      Rollup of 6 pull requests
      
      Successful merges:
      
       - #70535 (Track the finalizing node in the specialization graph)
       - #70590 (Miri: make backtrace function names and spans match up)
       - #70616 (rustc_target::abi: rename FieldPlacement to FieldsShape.)
       - #70626 (cargotest: remove webrender)
       - #70649 (clean up E0468 explanation)
       - #70662 (compiletest: don't use `std::io::stdout()`, as it bypasses `set_print`.)
      
      Failed merges:
      
      r? @ghost
      76b11980
    • D
      Rollup merge of #70662 - eddyb:compiletest-stdout-fix, r=Mark-Simulacrum · 7d4d450d
      Dylan DPC 提交于
      compiletest: don't use `std::io::stdout()`, as it bypasses `set_print`.
      
      This PR undoes a change made during #69916, which became unnecessary during review but was left in by accident, and which isn't correct due to `libtest` using `std::io::set_print`, which overwrites the `println!` behavior but *not* `writeln!(std::io::stdout(), ...)`.
      
      The effect of using `writeln!(std::io::stdout(), ...)` was that the diff output would show *while* running the tests, instead of at the end, when failing tests are listed.
      
      r? @Mark-Simulacrum cc @oli-obk
      7d4d450d
    • D
      Rollup merge of #70649 - GuillaumeGomez:cleanup-e0468, r=Dylan-DPC · 37b2e3fe
      Dylan DPC 提交于
      clean up E0468 explanation
      
      r? @Dylan-DPC
      37b2e3fe
    • D
      Rollup merge of #70626 - pietroalbini:remove-webrender-cargotest, r=Mark-Simulacrum · 0863e2ce
      Dylan DPC 提交于
      cargotest: remove webrender
      
      The current webrender commit occasionally fails without a reason, and the latest webrender commit is missing a dependency on our Windows builders. It's not worth installing an extra dependency for cargotest, and the spurious failure makes keeping this test not worth it.
      
      r? @Mark-Simulacrum
      0863e2ce
    • D
      Rollup merge of #70616 - anyska:fieldplacement-rename, r=oli-obk · 1b40067f
      Dylan DPC 提交于
      rustc_target::abi: rename FieldPlacement to FieldsShape.
      
      Originally suggested by @EddyB.
      1b40067f
    • D
      Rollup merge of #70590 - RalfJung:miri-backtrace, r=oli-obk · b919df21
      Dylan DPC 提交于
      Miri: make backtrace function names and spans match up
      
      Currently, Miri backtraces are a bit confusing:
      ```
      error: Undefined Behavior: entering unreachable code
        --> tests/compile-fail/never_transmute_void.rs:10:11
         |
      10 |     match v {} //~ ERROR  entering unreachable code
         |           ^ entering unreachable code
         |
         = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior
         = help: see https://doc.rust-lang.org/nightly/reference/behavior-considered-undefined.html for further information
      note: inside call to `f` at tests/compile-fail/never_transmute_void.rs:17:5
        --> tests/compile-fail/never_transmute_void.rs:17:5
         |
      17 |     f(v); //~ inside call to `f`
         |     ^^^^
         = note: inside call to `main` at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/libstd/rt.rs:67:34
         = note: inside call to closure at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/libstd/rt.rs:52:73
         = note: inside call to closure at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/libstd/sys_common/backtrace.rs:130:5
      ```
      When reading this like a normal backtrace, one would expect that e.g. the backrace involves the "main" function at "libstd/rt.rs:67:34". But that is not actually where we are in the main function, that is *where the main function is called*.
      
      This is not how backtraces are usually rendered (including e.g. with `RUST_BACKTRACE=1`). Usually we print next to each function name where inside that function the frame is currently executing, not where the *parent* frame is executing. With this PR and the Miri side at https://github.com/rust-lang/miri/pull/1283, the backtrace now looks as follows:
      ```
      error: Undefined Behavior: entering unreachable code
        --> tests/compile-fail/never_transmute_void.rs:10:11
         |
      10 |     match v {} //~ ERROR entering unreachable code
         |           ^ entering unreachable code
         |
         = help: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior
         = help: see https://doc.rust-lang.org/nightly/reference/behavior-considered-undefined.html for further information
         = note: inside `f` at tests/compile-fail/never_transmute_void.rs:10:11
      note: inside `main` at tests/compile-fail/never_transmute_void.rs:17:5
        --> tests/compile-fail/never_transmute_void.rs:17:5
         |
      17 |     f(v); //~ inside `main`
         |     ^^^^
         = note: inside closure at /home/r/src/rust/rustc/src/libstd/rt.rs:67:34
         = note: inside closure at /home/r/src/rust/rustc/src/libstd/rt.rs:52:73
         = note: inside `std::sys_common::backtrace::__rust_begin_short_backtrace::<[closure@DefId(1:6034 ~ std[87db]::rt[0]::lang_start_internal[0]::{{closure}}[0]::{{closure}}[0]) 0:&dyn std::ops::Fn() -> i32 + std::marker::Sync + std::panic::RefUnwindSafe], i32>` at /home/r/src/rust/rustc/src/libstd/sys_common/backtrace.rs:130:5
      ```
      Now function name and printed line numbers match up in the notes.
      
      This code is partially shared with const-eval, so the change also affects const-eval: instead of printing what is being called at some span, we print which function/constant this span is inside.
      
      With this, we can also remove the `span` field from Miri's stack frames (which used to track the *caller span* of that frame, quite confusing), and then get of a whole lot of `span` arguments that ultimately just served to fill that field (and as a fallback for `caller_location`, which however was never actually used).
      
      r? @oli-obk
      b919df21
    • D
      0e0d84c1
    • F
      Update Clippy · 93aa7142
      flip1995 提交于
      93aa7142
    • E
  2. 01 4月, 2020 27 次提交