Fix splat v0 mangling#158890
Conversation
|
rustbot has assigned @hanna-kruppe. Use Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
This comment was marked as resolved.
This comment was marked as resolved.
There was a problem hiding this comment.
Just so you know, changes to the mangling scheme typically also have a corresponding PR to https://github.com/rust-lang/rustc-demangle 🙂
a30c0d8 to
afaae5b
Compare
| // FIXME(splat): remove this once splat demangling has been added to rustc | ||
| //@ exec-env: RUST_BACKTRACE=0 |
There was a problem hiding this comment.
Hopefully this should skip demangling in panic backtraces, until the demangling impl in rust-lang/rustc-demangle#90 is added to rustc
@rustbot ready
There was a problem hiding this comment.
Just so you know, changes to the mangling scheme typically also have a corresponding PR to rust-lang/rustc-demangle
@wesleywiser, do we usually wait for the demangling PR to merge, or is there another way to disable demangling in backtraces?
Another alternative is dropping or modifying this test until the demangling merges.
@rustbot author
There was a problem hiding this comment.
I believe in the past, we've usually sequenced this kind of thing as:
- Add new mangling to rustc-demangle (done)
- Release new rustc-demangle to crates.io (done,
v0.1.28) - Update rust-lang/rust to use new rustc-demangle version
- Land the equivalent of this PR
Please also add an item to the tracking issue to update the v0 mangling documentation to include this new form when we stabilize it.
This comment has been minimized.
This comment has been minimized.
|
Reminder, once the PR becomes ready for a review, use |
|
r? wesleywiser |
|
|
afaae5b to
1c094c4
Compare
|
These commits modify the If this was unintentional then you should revert the changes before this PR is merged.
cc @Amanieu, @folkertdev, @sayantn These commits modify the If this was unintentional then you should revert the changes before this PR is merged.
cc @rust-lang/clippy |
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
Oh god, pressed the wrong button 😅 Apologies |
There was a problem hiding this comment.
Could you document this in the rustc book? We document even unstable mangling rules AFAICT.
Tracking issue: #153629
Typecheck considers a splatted and non-splatted function as distinct types, so mangling has to include splatting. If it doesn't, we get symbol clashes. See the ticket and the tests in this PR for details.
Demangling PR: rust-lang/rustc-demangle#90
Demangling in rust-lang/rust PR: #159202
@rustbot label +C-bug +F-splat +T-compiler +A-name-mangling
Fixes #158644
TODO
This PR is based on #159202, so we're waiting for it to merge before we rebase & merge this one.