Rollup of 4 pull requests#154862
Conversation
`HashStable::hash_stable` takes a `&mut Hcx`. In contrast, `ToStableHashKey::to_stable_hash_key` takes a `&Hcx`. But there are some places where the latter calls the former, and due to the mismatch a `clone` call is required to get a mutable `StableHashingContext`. This commit changes `to_stable_hash_key` to instead take a `&mut Hcx`. This eliminates the mismatch, the need for the clones, and the need for the `Clone` impls.
…in by-value returns
…ic, r=jieyouxu,chenyukang deny-by-default & report in deps `uninhabited_static` The lint was introduced as a FCW in rust-lang#78324 and landed in rust 1.49.0 (5 years ago); see also rust-lang#74840. Per the discussion in rust-lang#149518 (comment). cc @fmease @scottmcm @traviscross
…e-node, r=fee1-dead fixed generics of crate node ICE when `note_and_explain_type_err` is called during dyn-compatibility checking, the `body_owner_def_id` can be `CRATE_DEF_ID` because `ObligationCause::dummy()` uses it as a placeholder when there is no real body owner. calling `generics_of `on `CRATE_DEF_ID `caused an ICE because the crate root is a module and modules don't have generics. the fix guards all `generics_of` call sites by checking whether `body_owner_def_id` is `CRATE_DEF_ID` before attempting to look up generics, and skips the type parameter span labeling in that case. i also added regression test with original ice reproduce fixes rust-lang#152335
…hingContext, r=fee1-dead Remove `Clone` impl for `StableHashingContext`. `HashStable::hash_stable` takes a `&mut Hcx`. In contrast, `ToStableHashKey::to_stable_hash_key` takes a `&Hcx`. But there are some places where the latter calls the former, and due to the mismatch a `clone` call is required to get a mutable `StableHashingContext`. This commit changes `to_stable_hash_key` to instead take a `&mut Hcx`. This eliminates the mismatch, the need for the clones, and the need for the `Clone` impls. r? @fee1-dead
…e-149762, r=Kivooeo add regression test for Redundant memory strores with mut parameters … Fixs: rust-lang#149762 r? compiler
|
@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: 9602bda1dd 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 9602bda (parent) -> c2efcc4 (this PR) Test differencesShow 325 test diffsStage 1
Stage 2
Additionally, 321 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 c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af --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 (c2efcc4): comparison URL. Overall result: ✅ improvements - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (secondary 0.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 5.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 485.742s -> 487.096s (0.28%) |
Successful merges:
uninhabited_static#152853 (deny-by-default & report in depsuninhabited_static)Cloneimpl forStableHashingContext. #154744 (RemoveCloneimpl forStableHashingContext.)r? @ghost
Create a similar rollup