Rollup of 9 pull requests#154870
Conversation
By not pushing any crates to each_linked_rlib_for_lto when no cross-crate LTO is used, we can avoid special cases elsewhere.
It is still not entirely correct I think, but much closer to the current way things are done.
Forward discriminant-related queries through `ty::UnsafeBinder` to the erased inner type, matching the existing layout behavior.
Scalable vector types in `core_arch` are cfg'd for aarch64 and for rustdoc, which can successfully document these types given any `--target` (`core_arch` CI uses `i686-unknown-linux-gnu`) - this shouldn't trigger the "scalable vectors not supported on arch" error.
Various LTO cleanups * Move some special casing of thin local LTO into a single location. * Move lto_import_only_modules handling for fat LTO earlier. There is no reason to keep it separate until right before pass the LTO modules to the codegen backend. For thin LTO this introduces `ThinLtoInput` to correctly handle incr comp caching. * Remove the `Linker` type from cg_llvm. It previously helped deduplicate code for `-Zcombine-cgus`, but that flag no longer exists. Part of rust-lang/compiler-team#908
Constify fold, reduce and last for iterator These functions only require the addition of `[const]` in appropriate places, so it feels like almost a trivial change. Most of the others require either consitifying additional traits, const closures, or both.
…fter-visibility, r=TaKO8Ki Suggest similar keyword when visibility is not followed by an item Fixes rust-lang#153353. I would appreciate feedback on the following: - I inlined [`find_similar_kw`](https://github.com/rust-lang/rust/blob/cd14b73b4a41542d921f59e362a5b5005fa4f2ef/compiler/rustc_parse/src/parser/diagnostics.rs#L218-L224) instead of changing its visibility to `pub(super)`. I am happy to switch if it is preferred; - I didn't add a comment to the new test. Although the rustc-dev-guide specifies that a [comment should be added](https://rustc-dev-guide.rust-lang.org/tests/adding.html#comment-explaining-what-the-test-is-about) to every new test, this is not common in `tests/ui/parser/misspelled_keywords/` and the test seems self-explanatory. Let me know if you would like me to add a comment; Thank you in advance for your time and input!
…rn-assignment-help, r=Kivooeo Fix pattern assignment suggestions for uninitialized bindings Fixes rust-lang#145564
…iminant, r=jdonszelmann Fix ICE in unsafe binder discriminant helpers Forward discriminant-related helpers through `ty::UnsafeBinder` to the erased inner type, matching the existing layout behavior. Tracking issue: rust-lang#130516 Closes rust-lang#154424
…message, r=jdonszelmann fix(lints): Improve `ill_formed_attribute_input` with better help message Add a better help message to `ill_formed_attribute_input` for the cases where it matches the usage of `#![allow]`. For further details see rust-lang#154667 closes rust-lang#154667 cc: @Zalathar
…szelmann `#[cfg]`: suggest alternative `target_` name when the value does not match
…Mark-Simulacrum Promote `char::is_case_ignorable` from perma-unstable to unstable (Take two of rust-lang#154658, which was closed when GitHub Codespaces somehow managed to squash the entire commit history of rust-lang/rust into one commit) This function is currently used in the implementation of `str::to_lowercase()`. There is no reason to restrict it to the stdlib, though. Reimplementations of string casing for types other than `str` -> `String` shouldn't need to waste space with a duplicate copy of this table. @rustbot label A-unicode T-libs-api r? @Mark-Simulacrum
…, r=JonathanBrouwer ast_validation: scalable vectors okay for rustdoc Scalable vector types in `core_arch` are cfg'd for aarch64 and for rustdoc, which can successfully document these types given any `--target` (`core_arch` CI uses `i686-unknown-linux-gnu`) - this shouldn't trigger the "scalable vectors not supported on arch" error. This fixes the CI failure in rust-lang/stdarch#2071.
|
@bors r+ rollup=never p=5 |
This comment has been minimized.
This comment has been minimized.
|
📌 Perf builds for each rolled up PR:
previous master: c2efcc4ae0 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing c2efcc4 (parent) -> 5a0d572 (this PR) Test differencesShow 789 test diffsStage 1
Stage 2
Additionally, 779 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 5a0d572cd1bbe1e3f75d64b32d86dbd277ce4b89 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (5a0d572): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (secondary 0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 3.0%, secondary -9.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary -0.0%, secondary -0.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 487.096s -> 488.486s (0.29%) |
Successful merges:
ill_formed_attribute_inputwith better help message #154722 (fix(lints): Improveill_formed_attribute_inputwith better help message)#[cfg]: suggest alternativetarget_name when the value does not match #154777 (#[cfg]: suggest alternativetarget_name when the value does not match)char::is_case_ignorablefrom perma-unstable to unstable #154849 (Promotechar::is_case_ignorablefrom perma-unstable to unstable)r? @ghost
Create a similar rollup