diff options
| author | Amanieu d'Antras <amanieu@gmail.com> | 2022-02-09 14:11:51 +0000 |
|---|---|---|
| committer | Amanieu d'Antras <amanieu@gmail.com> | 2022-08-23 16:12:58 +0800 |
| commit | 5ff087669438ec406fd3abc99bd1b85b6fbe156a (patch) | |
| tree | d273383af8014904fa5681e65f6c43af26ca4409 /compiler/rustc_interface/src/errors.rs | |
| parent | db94dbc597ac91cd5d16e898fa9081c09c879123 (diff) | |
| download | rust-5ff087669438ec406fd3abc99bd1b85b6fbe156a.tar.gz rust-5ff087669438ec406fd3abc99bd1b85b6fbe156a.zip | |
Move personality functions to std
These were previously in the panic_unwind crate with dummy stubs in the panic_abort crate. However it turns out that this is insufficient: we still need a proper personality function even with -C panic=abort to handle the following cases: 1) `extern "C-unwind"` still needs to catch foreign exceptions with -C panic=abort to turn them into aborts. This requires landing pads and a personality function. 2) ARM EHABI uses the personality function when creating backtraces. The dummy personality function in panic_abort was causing backtrace generation to get stuck in a loop since the personality function is responsible for advancing the unwind state to the next frame.
Diffstat (limited to 'compiler/rustc_interface/src/errors.rs')
0 files changed, 0 insertions, 0 deletions
