Skip to content

Stop mangling rust_eh_personality again for now - #164855

Merged
rust-bors[bot] merged 1 commit into
rust-lang:mainfrom
bjorn3:unmangle_personality
Oct 24, 2026
Merged

rust-bors[bot] merged 1 commit into
rust-lang:mainfrom
bjorn3:unmangle_personality

Conversation

@bjorn3

@bjorn3 bjorn3 commented Oct 24, 2026

Copy link
Copy Markdown
Member

Some projects manually define rust_eh_personality as they use no_std on a target where libcore is compiled with panic=unwind and thus need rust_eh_personality to be present while it is only defined in libstd. These projects don't want to use unstable features and thus can't use a proper #[lang = "eh_personality"].

This reverts just the symbol mangling change of #148413. It preserves all the refactors to prevent codegen backends from hard coding the symbol name, so we can easily change it back to mangled in the future again.

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Oct 24, 2026
@rustbot

rustbot commented Oct 24, 2026

Copy link
Copy Markdown
Collaborator

r? @adwinwhite

rustbot has assigned @adwinwhite.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: compiler
  • compiler expanded to 77 candidates
  • Random selection from 18 candidates

@bjorn3

bjorn3 commented Oct 24, 2026

Copy link
Copy Markdown
Member Author

Some projects manually define rust_eh_personality as they use no_std on
a target where libcore is compiled with panic=unwind and thus need
rust_eh_personality to be present while it is only defined in libstd.
These projects don't want to use unstable features and thus can't use a
proper #[lang = "eh_personality"].
@bjorn3
bjorn3 force-pushed the unmangle_personality branch from cdef732 to 46bc916 Compare October 24, 2026 14:07
@rustbot

rustbot commented Oct 24, 2026

Copy link
Copy Markdown
Collaborator

Some changes occurred in tests/ui/sanitizer

cc @rcvalle

@rustbot rustbot added A-run-make Area: port run-make Makefiles to rmake.rs PG-exploit-mitigations Project group: Exploit mitigations labels Oct 24, 2026
@Mark-Simulacrum

Copy link
Copy Markdown
Member

Is the assumption here that this is a "temporary" revert while we figure out a path for stable support for these projects? E.g., a stable attribute or perhaps extern crate panic_abort; or some other mechanism to opt-in without breakage? Can we cut / is there an appropriate tracking issue to cc here?

It's unfortunate if mangling it ends up blocking on build-std or similar, IMO.

@bjorn3

bjorn3 commented Oct 24, 2026

Copy link
Copy Markdown
Member Author

Yeah, this would be temporary until a better solution is found.

@Mark-Simulacrum

Copy link
Copy Markdown
Member

In that case, @bors r+

r? me

@rust-bors

rust-bors Bot commented Oct 24, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 46bc916 has been tentatively approved by Mark-Simulacrum

It will be put into the queue for this repository once PR CI succeeds.

@rust-bors rust-bors Bot added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Oct 24, 2026
rust-bors Bot pushed a commit that referenced this pull request Oct 24, 2026
…uwer

Rollup of 7 pull requests

Successful merges:

 - #163270 (Allow simd types in improper_ctypes lint)
 - #164855 (Stop mangling rust_eh_personality again for now)
 - #153679 (When multiple traits are applicable for method, do not specialize main message to the first one that applied)
 - #164248 (Retroactively add missing stabilized APIs to relnotes)
 - #164573 (Remove remaining mentions of `Unique`)
 - #164824 (PassWrapper: stop setting Options.ExceptionModel on LLVM 24)
 - #164844 (Add tracking issue for `#![feature(char_is_xid)]`)
@rust-bors
rust-bors Bot merged commit 9619173 into rust-lang:main Oct 24, 2026
14 checks passed
@rustbot rustbot added this to the 1.101.0 milestone Oct 24, 2026
rust-bors Bot pushed a commit that referenced this pull request Oct 24, 2026
Rollup merge of #164855 - bjorn3:unmangle_personality, r=Mark-Simulacrum

Stop mangling rust_eh_personality again for now

Some projects manually define rust_eh_personality as they use no_std on a target where libcore is compiled with panic=unwind and thus need rust_eh_personality to be present while it is only defined in libstd. These projects don't want to use unstable features and thus can't use a proper #[lang = "eh_personality"].

This reverts just the symbol mangling change of #148413. It preserves all the refactors to prevent codegen backends from hard coding the symbol name, so we can easily change it back to mangled in the future again.
@bjorn3
bjorn3 deleted the unmangle_personality branch October 25, 2026 11:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-run-make Area: port run-make Makefiles to rmake.rs PG-exploit-mitigations Project group: Exploit mitigations S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants