-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 8 pull requests #92690
Rollup of 8 pull requests #92690
Conversation
Co-authored-by: Hans Kratz <hans@appfour.com> Co-authored-by: Chris Denton <ChrisDenton@users.noreply.github.com> Co-authored-by: Joshua Nelson <github@jyn.dev>
Co-authored-by: Josh Triplett <josh@joshtriplett.org> Co-authored-by: Alexander Ronald Altman <alexanderaltman@me.com>
Also update Node to v16.9.0, es-check to 6.1.1, and eslint to 8.6.0.
This reduces clutter on doc pages.
…c link resolution and later passes
This adds `as_mut()` method for `*const T` and `as_const()` for `*mut T` which are intended to make casting of consts safer. This was discussed in the [internals discussion][discussion]. [discussion]: https://internals.rust-lang.org/t/casting-constness-can-be-risky-heres-a-simple-fix/15933
Add release notes for 1.58 r? `@rust-lang/release`
…Gomez Move crate drop-down to search results page This reduces clutter on doc pages. Part of rust-lang#59840 r? ```@GuillaumeGomez``` Demo: https://rustdoc.crud.net/jsha/crates-in-results/std/index.html?search=str
…=cjgillot Don't resolve blocks in foreign functions Although it is an error for a foreign function to have a block, it is still possible at the level of the AST. rust-lang#74204 made AST lowering skip over blocks belonging to foreign functions, since they're invalid. However, resolve still treated these blocks normally, resulting in a mismatch between the HIR and resolve, which could cause an ICE under certain circumstances. This PR changes resolve to skip over blocks belonging to foreign functions, as AST lowering does. Fixes rust-lang#91370. r? ``@cjgillot``
expand: Refactor InvocationCollector visitor for better code reuse The refactoring part of rust-lang#92473. Invocation collector visitor logic now lives in two main functions: - `fn flat_map_node`, corresponding to "one to many" expansions - `fn visit_node`, corresponding to "one to one" expansions All specific mut visitor methods now use one of these functions. The new `InvocationCollectorNode` trait implemented for all `AstFragment` nodes provides the necessary small pieces of functionality required to implement the `(flat_map,visit)_node` functions. r? `@Aaron1011`
…ider rustdoc: Introduce a resolver cache for sharing data between early doc link resolution and later passes The refactoring parts of rust-lang#88679, shouldn't cause any slowdowns. r? `@jyn514`
Implemented const casts of raw pointers This adds `as_mut()` method for `*const T` and `as_const()` for `*mut T` which are intended to make casting of consts safer. This was discussed in the [internals discussion][discussion]. Given that this is a simple change and multiple people agreed to it including `@RalfJung` I decided to go ahead and open the PR. [discussion]: https://internals.rust-lang.org/t/casting-constness-can-be-risky-heres-a-simple-fix/15933
…_ref, r=m-ou-se Make `Atomic*::from_mut` return `&mut Atomic*` ```rust impl Atomic* { pub fn from_mut(v: &mut bool) -> &mut Self; // ^^^^---- previously was just a & } ``` This PR makes `from_mut` atomic methods tracked in rust-lang#76314 return unique references to atomic types, instead of shared ones. This makes `from_mut` and `get_mut` inverses of each other, allowing to undo either of them by the other. r? `@RalfJung` (as Ralf was [concerned](rust-lang#76314 (comment)) about this)
…gle, r=jsha Remove useless collapse toggle on "all items" page When clicking on this toggle, nothing happens because there is nothing to collapse. Instead of keeping it around, let's just remove it. Before: ![Screenshot from 2022-01-08 16-02-38](https://user-images.githubusercontent.com/3050060/148649149-821a1e77-8c34-4975-b50a-984ca8865518.png) After: ![Screenshot from 2022-01-08 16-02-32](https://user-images.githubusercontent.com/3050060/148649154-b5912a97-9229-46bd-be3c-df3c3fa3ac8f.png) r? `@jsha`
@bors r+ rollup=never p=8 |
📌 Commit e6aa48d has been approved by |
☀️ Test successful - checks-actions |
Finished benchmarking commit (f7bb8e3): comparison url. Summary: This change led to large relevant improvements 🎉 in compiler performance.
If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression |
Successful merges:
Atomic*::from_mut
return&mut Atomic*
#92671 (MakeAtomic*::from_mut
return&mut Atomic*
)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup