Rollup of 5 pull requests#156893
Conversation
This intermediate commit makes subsequent diffs/blame a bit nicer, by encouraging git's blame view to preserve line history for the remaining parts of `handle_needs`, which would otherwise be obscured. A subsequent commit will move the list back into `needs.rs` in an altered form.
This commit fixes a broken suggestion that occurs when a struct pattern contains an unused variable written with a raw identifier.
Fixes rust-lang#10671 The `-Zunpretty=identified` option (without `expanded`) is effectively useless because `NodeId`s are unassigned prior to macro expansion, leading them to just be `NodeId::MAX_AS_U32`. This commit removes the `Identified` variant from `PpSourceMode` and removes `-Zunpretty=identified` from the command-line options. Users should use `-Zunpretty=expanded,identified` instead (which is retained) if they want to inspect `NodeId`s.
This reverts commit 450cdb5.
Do not suggest compatible variants inside macro Fixes rust-lang#142359 r? compiler
compiletest: Prepare all simple `//@ needs-*` conditions in advance This PR makes compiletest check almost all `//@ needs-*` conditions in advance, separate from individual tests or directives. The results of these checks are stored in a prepared hashmap that can then be inspected by individual tests when encountering a needs-* directive. This is *similar* to how `ignore-*`/`only-*` directives work (as of rust-lang#149470), though currently the two mechanisms don't share code, as they have subtly different requirements. r? jieyouxu
…ables-struct-pattern, r=JonathanBrouwer
Fix suggestion of unused variables with raw identifier in struct pattern
This MR fixes a broken lint suggestion that occurs when a struct pattern contains an unused variable written with a raw identifier.
In the following fragment, `r#move` is an unused variable. The compiler suggested to change it to `move: _` which doesn’t compile since move is a keyword. This change makes it so that the suggestion becomes `r#move: _`
```rust
struct Foo {
r#move: u32
}
fn bar(foo: Foo) -> u32 {
match foo {
Foo { r#move } => 0
}
}
```
r? JonathanBrouwer
…ied, r=bjorn3 Remove useless -Zunpretty=identified option The `-Zunpretty=identified` option (without `expanded`) is effectively useless because `NodeId`s are unassigned prior to macro expansion, leading them to just be `NodeId::MAX_AS_U32`. This commit removes the `Identified` variant from `PpSourceMode` and removes `-Zunpretty=identified` from the command-line options. Users should use `-Zunpretty=expanded,identified` instead (which is retained) if they want to inspect `NodeId`s. Fixes rust-lang#10671
…-item, r=workingjubilee Revert "Allow `global_asm!` in statement positions" This reverts commit 450cdb5. Based on discussion in [#t-lang > insta-stable &rust-lang#96;global_asm!&rust-lang#96; as inner items](https://rust-lang.zulipchat.com/#narrow/channel/213817-t-lang/topic/insta-stable.20.60global_asm.21.60.20as.20inner.20items/with/597411711), rust-lang#156582 should not have been merged without FCP. We've also since found a bug in the implementation (or really, an assumption in the existing code that the PR invalidates), so to re-land this - new behavior should be behind a feature gate - the fix in rust-lang#156855 (comment) should be included (and reviewed by someone familiar with `rustc_resolve`) Then we keep it unstable for a bit, and see if the fuzzer finds anything else. Nothing here is particularly controversial I think, but we need to do our due diligence. r? @ghost
|
@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: 609b8c5cef 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 609b8c5 (parent) -> 423e3d2 (this PR) Test differencesShow 23 test diffsStage 1
Stage 2
Additionally, 15 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 423e3d2529999d5e57fa0351783d1292b9219ad4 --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 (423e3d2): comparison URL. Overall result: ❌ regressions - 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 (primary 7.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 3.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 508.631s -> 511.932s (0.65%) |
Successful merges:
//@ needs-*conditions in advance #156692 (compiletest: Prepare all simple//@ needs-*conditions in advance)global_asm!in statement positions" #156884 (Revert "Allowglobal_asm!in statement positions")r? @ghost
Create a similar rollup