Rename splat to avoid stable name collisions - #159817
Conversation
|
The reflection data structures are tied exactly to the implementation cc @oli-obk This PR changes rustc_public cc @oli-obk, @celinval, @ouz-a, @makai410 Some changes occurred in compiler/rustc_hir/src/attrs cc @jdonszelmann, @JonathanBrouwer
cc @rust-lang/rustfmt Some changes occurred in compiler/rustc_attr_parsing |
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
|
No P-high for me! @rustbot label +beta-nominated +A-attributes +A-macros +A-resolve +C-bug +F-splat +T-compiler |
|
FWIW we only assign |
|
I will "de-nominate" from backport as now it's a bit too early. Feel free to nominate again when the PR is reviewed and approved :) @rustbot label -beta-nominated |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Please restore src/tools/rustfmt/tests/source/reorder_modules/ZYXW/mod.rs, src/tools/rustfmt/tests/source/reorder_modules/ZYXW/mod.rs, src/tools/rustfmt/tests/target/reorder_modules/ABCD/mod.rs, src/tools/rustfmt/tests/target/reorder_modules/ZYXW/mod.rs
Removing these files is causing rustfmt test failures:
thread '<unnamed>' (54612) panicked at src/tools/rustfmt/src/test/mod.rs:842:40:
called `Result::unwrap()` on an `Err` value: ModuleResolutionError(ModuleResolutionError { module: "ZYXW", kind: NotFound { file: "tests/target/reorder_modules/ZYXW.rs" }
|
Reminder, once the PR becomes ready for a review, use |
fbab3a6 to
6adf92b
Compare
There was a problem hiding this comment.
Thanks, I did some grepping and didn't notice any stragglers modulo rustc_demangle case, as you mentioned.
(Also thanks for making it easy to review by breaking it into commits)
@bors r+ rollup=never p=1 (beta-backport)
|
@bors rollup=iffy (can be slightly conflict-prone) |
…ieyouxu Rename splat to avoid stable name collisions Tracking issue: rust-lang#153629 This PR renames `#[splat]` to `#[rustc_splat]`, in a mostly automated way (using `fastmod`). The rename commands I used were: ```sh fastmod --fixed-strings '#[splat]' '#[rustc_splat]' fastmod --fixed-strings '`splat` attribute' '`rustc_splat` attribute' # I'm pretty sure the symbol demangling commands are no-ops on beta # Legacy symbol demangling fastmod --fixed-strings '$splat$' '$rustc_splat$' # Revert some changes that aren't in rustc_demangle yet fastmod 'v0(.*)#\[rustc_splat\]' 'v0${1}#[splat]' tests/ui/splat/splat-mangling.rs ``` Part of rust-lang#159428 #### Backport Advice Cherry-pick the first commit to the beta branch, then run the fastmod commands above. I've tested this locally (with a slightly different name), and it works, see my [`splat-rename-beta` branch](https://github.com/teor2345/rust/tree/splat-rename-beta). #### Remaining Work rustc_demangle needs an update to the attribute name, a release, and then a version bump in rust-lang/rust. I'll do that separately. It doesn't need to be backported, because the last version bump was after beta branched. There's also some external code that needs updates, the full list is in the ticket: rust-lang#159428 (comment) @rustbot label +beta-nominated +A-attributes +A-macros +A-resolve +C-bug +F-splat +P-high +T-compiler
…uwer Rollup of 8 pull requests Successful merges: - #159817 (Rename splat to avoid stable name collisions) - #158057 (Don't escape U+FF9E and U+FF9F in `escape_debug_ext`) - #159818 (Resolve vars before calling `unnormalized_obligations`) - #160040 (Split function parsing out of `item.rs` to a new module.) - #160044 (Add regression tests for fixed dead-code issues) - #160147 (tests: Remove `-Zthreads` options from tests in `ui/parallel-rustc`) - #160175 (Try to recover less from incorrectly parsed const arg) - #160181 (Mark `Tuple` and `FnPtr` traits `#[fundamental]`)
|
beta backport approved as per compiler team on Zulip. A backport PR will be authored by the release team at the end of the current development cycle. Backport labels are handled by them. |
…ieyouxu Rename splat to avoid stable name collisions Tracking issue: rust-lang#153629 This PR renames `#[splat]` to `#[rustc_splat]`, in a mostly automated way (using `fastmod`). The rename commands I used were: ```sh fastmod --fixed-strings '#[splat]' '#[rustc_splat]' fastmod --fixed-strings '`splat` attribute' '`rustc_splat` attribute' # I'm pretty sure the symbol demangling commands are no-ops on beta # Legacy symbol demangling fastmod --fixed-strings '$splat$' '$rustc_splat$' # Revert some changes that aren't in rustc_demangle yet fastmod 'v0(.*)#\[rustc_splat\]' 'v0${1}#[splat]' tests/ui/splat/splat-mangling.rs ``` Part of rust-lang#159428 #### Backport Advice Cherry-pick the first commit to the beta branch, then run the fastmod commands above. I've tested this locally (with a slightly different name), and it works, see my [`splat-rename-beta` branch](https://github.com/teor2345/rust/tree/splat-rename-beta). #### Remaining Work rustc_demangle needs an update to the attribute name, a release, and then a version bump in rust-lang/rust. I'll do that separately. It doesn't need to be backported, because the last version bump was after beta branched. There's also some external code that needs updates, the full list is in the ticket: rust-lang#159428 (comment) @rustbot label +beta-nominated +A-attributes +A-macros +A-resolve +C-bug +F-splat +P-high +T-compiler
Rollup of 14 pull requests Successful merges: - #159817 (Rename splat to avoid stable name collisions) - #160204 (Sync from portable simd 2026 07 30) - #150885 (Revive L4Re target) - #158057 (Don't escape U+FF9E and U+FF9F in `escape_debug_ext`) - #160125 (Fix typing mode handling in transmute checks and rustc_dump_layout) - #160152 (Create on-demand CI job for testing EC2 instances) - #159214 (std: improve the documentation of the random feature) - #159818 (Resolve vars before calling `unnormalized_obligations`) - #160040 (Split function parsing out of `item.rs` to a new module.) - #160044 (Add regression tests for fixed dead-code issues) - #160144 (renovate: group lockfiles PRs) - #160149 (Fix Windows on Arm PAC default) - #160175 (Try to recover less from incorrectly parsed const arg) - #160181 (Mark `Tuple` and `FnPtr` traits `#[fundamental]`)
This comment has been minimized.
This comment has been minimized.
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 be3d26d (parent) -> 8ab9fdf (this PR) Test differencesShow 2 test diffs2 doctest diffs were found. These are ignored, as they are noisy. Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 8ab9fdff5a91b9f2b5ed57fb0275452d9a0d0280 --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 (8ab9fdf): comparison URL. Overall result: ❌✅ regressions and 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 (primary 0.4%, secondary 0.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary -0.0%, secondary -2.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: 489.155s -> 492.09s (0.60%) |
|
This is a pure rename, I think the benchmark changes are noise. |
…eyouxu Rename splat to rustc_splat in error messages Tracking issue: rust-lang#153629 This PR renames "splat attribute" to "\`rustc_splat\` attribute" in error messages (and some comments). It was meant to be part of rust-lang#159817 but I missed it. The search and replace command I used was: ```sh fastmod --extensions rs --fixed-strings 'splat attribute' '`rustc_splat` attribute' ``` This doesn't need to be backported, because those error messages only appear on nightly. Part of rust-lang#159428
…eyouxu Rename splat to rustc_splat in error messages Tracking issue: rust-lang#153629 This PR renames "splat attribute" to "\`rustc_splat\` attribute" in error messages (and some comments). It was meant to be part of rust-lang#159817 but I missed it. The search and replace command I used was: ```sh fastmod --extensions rs --fixed-strings 'splat attribute' '`rustc_splat` attribute' ``` This doesn't need to be backported, because those error messages only appear on nightly. Part of rust-lang#159428
…eyouxu Rename splat to rustc_splat in error messages Tracking issue: rust-lang#153629 This PR renames "splat attribute" to "\`rustc_splat\` attribute" in error messages (and some comments). It was meant to be part of rust-lang#159817 but I missed it. The search and replace command I used was: ```sh fastmod --extensions rs --fixed-strings 'splat attribute' '`rustc_splat` attribute' ``` This doesn't need to be backported, because those error messages only appear on nightly. Part of rust-lang#159428
…eyouxu Rename splat to rustc_splat in error messages Tracking issue: rust-lang#153629 This PR renames "splat attribute" to "\`rustc_splat\` attribute" in error messages (and some comments). It was meant to be part of rust-lang#159817 but I missed it. The search and replace command I used was: ```sh fastmod --extensions rs --fixed-strings 'splat attribute' '`rustc_splat` attribute' ``` This doesn't need to be backported, because those error messages only appear on nightly. Part of rust-lang#159428
View all comments
Tracking issue: #153629
This PR renames
#[splat]to#[rustc_splat], in a mostly automated way (usingfastmod).The rename commands I used were:
Part of #159428
Backport Advice
Cherry-pick the first commit to the beta branch, then run the fastmod commands above.
I've tested this locally (with a slightly different name), and it works, see my
splat-rename-betabranch.Remaining Work
rustc_demangle needs an update to the attribute name, a release, and then a version bump in rust-lang/rust. I'll do that separately. It doesn't need to be backported, because the last version bump was after beta branched.
There's also some external code that needs updates, the full list is in the ticket: #159428 (comment)
@rustbot label +beta-nominated +A-attributes +A-macros +A-resolve +C-bug +F-splat +P-high +T-compiler