-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Rollup of 14 pull requests #89525
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Rollup of 14 pull requests #89525
Conversation
Create VecDeque directly from the array instead of inserting items one-by-one.
As suggested in rust-lang#88564. This adds a `try_clone()` to `OwnedFd` by refactoring the code out of the existing `File`/`Socket` code.
Changes doc text to refer to the "default" parameter as the "default" function.
Co-authored-by: Ivan Tham <pickfire@riseup.net>
Enable outline-atomics by default as enabled in clang by the following commit https://reviews.llvm.org/rGc5e7e649d537067dec7111f3de1430d0fc8a4d11 Performance improves by several orders of magnitude when using the LSE instructions instead of the ARMv8.0 compatible load/store exclusive instructions. Tested on Graviton2 aarch64-linux with x.py build && x.py install && x.py test
This change makes it consistent with `Hash` for all other collections.
A subset of places referred to 'super-trait', so this changes them to all use 'supertrait'. This matches 'supertype' and some other usages. An exception is 'auto-trait' which is consistently used in that manner.
…kingjubilee [aarch64] add target feature outline-atomics Enable outline-atomics by default as enabled in clang by the following commit https://reviews.llvm.org/rGc5e7e649d537067dec7111f3de1430d0fc8a4d11 Performance improves by several orders of magnitude when using the LSE instructions instead of the ARMv8.0 compatible load/store exclusive instructions. Tested on Graviton2 aarch64-linux with x.py build && x.py install && x.py test
…shtriplett implement advance_(back_)_by on more iterators Add more efficient, non-default implementations for `feature(iter_advance_by)` (rust-lang#77404) on more iterators and adapters. This PR only contains implementations where skipping over items doesn't elide any observable side-effects such as user-provided closures or `clone()` functions. I'll put those in a separate PR.
Fix an ICE caused by type mismatch errors being ignored This PR fixes rust-lang#87771. It turns out that the check on `compiler/rustc_typeck/src/check/demand.rs:148` leads to the ICE. I removed it because the early return in [`check_expr_assign`](https://github.com/theo-lw/rust/blob/dec7fc3ced5bc3c18d0e5d29921d087f93189cb8/compiler/rustc_typeck/src/check/expr.rs#L928) already prevents unnecessary error messages from the call to `check_expr_coercable_to_type`.
…u-se VecDeque: improve performance for From<[T; N]> Create `VecDeque` directly from the array instead of inserting items one-by-one. Benchmark ``` ./x.py bench library/alloc --test-args vec_deque::bench_from_array_1000 ``` * Before ``` test vec_deque::bench_from_array_1000 ... bench: 3,991 ns/iter (+/- 717) ``` * After ``` test vec_deque::bench_from_array_1000 ... bench: 268 ns/iter (+/- 37) ```
…r=joshtriplett Add a `try_clone()` function to `OwnedFd`. As suggested in rust-lang#88564. This adds a `try_clone()` to `OwnedFd` by refactoring the code out of the existing `File`/`Socket` code. r? `@joshtriplett`
…x, r=dtolnay Improve wording of `map_or_else` docs Changes doc text to refer to the "default" parameter as the "default" function. Previously, the doc text referred to the "f" parameter as the "default" function; and the "default" parameter as the "fallback" function.
…avidtwco Recommend running `cargo clean` in E0514 output This suggestion has worked for me before. Seems to me it could help others.
Include the length in BTree hashes This change makes it consistent with `Hash` for all other collections.
…=jyn514 rustdoc: use slice::contains instead of open-coding it
Improve error message for missing angle brackets in `[_]::method` Fixes rust-lang#89388.
…t-usage, r=nagisa Consistently use 'supertrait'. A subset of places referred to 'super-trait', so this changes them to all use 'supertrait'. This matches 'supertype' and some other usages. An exception is 'auto-trait' which is consistently used in that manner.
…estebank Practice diagnostic message convention Detected by rust-lang#89455. r? `@estebank`
…nkov Fix ICE with buffered lint referring to AST node deleted by everybody_loops Fixes rust-lang#87308. Note the following comment: https://github.com/rust-lang/rust/blob/08759c691e2e9799a3c6780ffdf910240ebd4a6b/compiler/rustc_lint/src/early.rs#L415-L417 As it turns out, this is not _always_ a bug, because `-Zunpretty=everybody_loops` causes a lot of AST nodes to be deleted, and thus some buffered lints will refer to non-existent node ids. To fix this, my changes simply ignore buffered lints if `-Zunpretty=everybody_loops` is enabled, which, from my understanding, shouldn't be a big issue because it only affects pretty-printing. Of course, a more elegant solution would only ignore buffered lints that actually point at deleted node ids, but I haven't figured out an easy way of achieving this. For the concrete example in rust-lang#87308, the buffered lint is created [here](https://github.com/rust-lang/rust/blob/08759c691e2e9799a3c6780ffdf910240ebd4a6b/compiler/rustc_expand/src/mbe/macro_rules.rs#L145-L151) with the `lint_node_id` from [here](https://github.com/rust-lang/rust/blob/08759c691e2e9799a3c6780ffdf910240ebd4a6b/compiler/rustc_expand/src/mbe/macro_rules.rs#L319), i.e. it points at the macro _expansion_, which then gets deleted by `ReplaceBodyWithLoop` [here](https://github.com/rust-lang/rust/blob/08759c691e2e9799a3c6780ffdf910240ebd4a6b/compiler/rustc_interface/src/passes.rs#L377).
…shtriplett Stabilize `const_panic` Closes rust-lang#51999 FCP completed in rust-lang#89006 `@rustbot` label +A-const-eval +A-const-fn +T-lang cc `@oli-obk` for review (not `r?`'ing as not on lang team)
@bors r+ p=5 |
📌 Commit 2914d1d has been approved by |
⌛ Testing commit 2914d1d with merge fc711bbcfe303b6a138e6b999ae79a9a4c704d52... |
@bors treeclosed=4 The queue's really big, going to try and get some rollups in. Feel free to give some of the rollup=never PRs higher priority if necessary, or reopen the tree if I end up not being super responsive (you can ping me on Zulip or Discord). |
The job Click to see the possible cause of the failure (guessed by this bot)
|
💔 Test failed - checks-actions |
Caused by #88794 |
Successful merges:
try_clone()
function toOwnedFd
. #88794 (Add atry_clone()
function toOwnedFd
.)map_or_else
docs #89400 (Improve wording ofmap_or_else
docs)cargo clean
in E0514 output #89407 (Recommend runningcargo clean
in E0514 output)[_]::method
#89447 (Improve error message for missing angle brackets in[_]::method
)const_panic
#89508 (Stabilizeconst_panic
)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup