-
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 11 pull requests #100416
Rollup of 11 pull requests #100416
Conversation
Temporaries created with `MirPatch::new_temp` will be declared after patch application. Remove manually created duplicate declarations. Removing duplicates exposes another issue. Visitor elaborates terminator twice and attempts to access new, but not yet available, local declarations. Remove duplicated call to `visit_terminator`.
This function is available on Linux since glibc 2.12, musl 1.1.16, and uClibc 1.0.20. The main advantage over `prctl` is that it properly represents the pointer argument, rather than a multi-purpose `long`, so we're better representing strict provenance (rust-lang#95496).
Some of these don't need a `use` statement because there is already a `#[macro_use] extern crate rustc_data_structures` item in the crate.
This stabilizes `ptr_const_cast` feature as was decided in a recent [FCP](rust-lang#92675 (comment)) Closes rust-lang#92675
This will be very useful in subsequent commits where I will improve the output.
This commit: - Adds a comment explaining which `visit_*` methods should be implemented. - Adds and removes some `visit_*` methods accordingly, improving coverage, and avoiding some double counting.
Currently it's reported as either `TraitItem` or `ImplItem`. This commit changes it to `AssocItem`, because having the report match the type name is (a) consistent with other types, and (b) the trait/impl split isn't that important here.
This tells you which variants of the enums are most common, which is very useful. I've only done it for the AST for now, HIR can be done later.
…eign-variants, r=scottmcm Check if enum from foreign crate has any non exhaustive variants when attempting a cast Fixes rust-lang#91161 As stated in the issue, this will require a crater run as it might break other people's stuff.
…andidate, r=pnkfelix Determine match_has_guard from candidates instead of looking up thir table again Currently looking through mir build of matches because of interest in deref patterns. Finding some micro-optimizable things.
…r=m-ou-se Stabilize ptr_const_cast This stabilizes `ptr_const_cast` feature as was decided in a recent [FCP](rust-lang#92675 (comment)) Closes rust-lang#92675
…gisa Remove duplicated temporaries creating during box derefs elaboration Temporaries created with `MirPatch::new_temp` will be declared after patch application. Remove manually created duplicate declarations. Removing duplicates exposes another issue. Visitor elaborates terminator twice and attempts to access new, but not yet available, local declarations. Remove duplicated call to `visit_terminator`. Extracted from rust-lang#99946.
…nagisa Do not consider method call receiver as an argument in AST. Fixes rust-lang#73663
…ulacrum linux: Use `pthread_setname_np` instead of `prctl` This function is available on Linux since glibc 2.12, musl 1.1.16, and uClibc 1.0.20. The main advantage over `prctl` is that it properly represents the pointer argument, rather than a multi-purpose `long`, so we're better representing strict provenance (rust-lang#95496).
…ion, r=fee1-dead Use `&mut Diagnostic` instead of `&mut DiagnosticBuilder` unless needed This seems to be the established convention (02ff9e0) when `DiagnosticBuilder` was first added. I am guilty of introducing some of these.
…, r=Dylan-DPC Remove more Clean trait implementations Follow-up of rust-lang#99638. r? `@Dylan-DPC`
…s, r=lqd Improve size assertions r? `@lqd`
…michaelwoerister Improve `-Zhir-stats` Add testing, improve coverage, avoid some double counting, and add more detail. r? `@michaelwoerister`
…=jsha Improve error messages when running rustdoc GUI tests There was already a message on how to install `browser-ui-test`, so nothing to be done there. However, we didn't show how to update its version, so the first commit adds it. Another pain point was how to fix the unexpected crash in `browser-ui-test` (because of a missing `--no-sandbox`, still no idea why it became mandatory a few months ago on some linux distributions...). It now looks like this: ```console Running 1 rustdoc-gui (8 concurrently) ... ERROR: puppeteer failed when trying to create a new page. Please try again with `--no-sandbox` `browser-ui-test` crashed unexpectedly. Please try again with adding `--test-args --no-sandbox` at the end. For example: `x.py test src/test/rustdoc-gui --test-args --no-sandbox` Build completed unsuccessfully in 0:00:03 ``` Thanks to `@jsha` for suggesting these improvements! r? `@jsha`
@bors r+ rollup=never p=5 |
☀️ Test successful - checks-actions |
Tested on commit rust-lang/rust@20ffea6. Direct link to PR: <rust-lang/rust#100416> 💔 miri on linux: test-pass → test-fail (cc @RalfJung @oli-obk). 💔 rls on windows: test-pass → build-fail (cc @Xanewok). 💔 rls on linux: test-pass → build-fail (cc @Xanewok).
📌 Perf builds for each rolled up PR: In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (20ffea6): comparison url. Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results
CyclesResults
If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression Footnotes |
Successful merges:
pthread_setname_np
instead ofprctl
#100287 (linux: Usepthread_setname_np
instead ofprctl
)&mut Diagnostic
instead of&mut DiagnosticBuilder
unless needed #100351 (Use&mut Diagnostic
instead of&mut DiagnosticBuilder
unless needed)-Zhir-stats
#100398 (Improve-Zhir-stats
)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup