Forbid use of extern "C-unwind" inside standard library

Those libraries are build with `-C panic=unwind` and is expected to
be linkable to `-C panic=abort` library. To ensure unsoundness
compiler needs to prevent a `C-unwind` call to exist, as doing so may leak
foreign exceptions into `-C panic=abort`.
This commit is contained in:
Gary Guo 2023-12-16 01:49:01 +00:00
parent 8f359beca4
commit f08e2d4137
3 changed files with 3 additions and 0 deletions

View File

@ -92,6 +92,7 @@
#![warn(multiple_supertrait_upcastable)]
#![allow(internal_features)]
#![allow(rustdoc::redundant_explicit_links)]
#![deny(ffi_unwind_calls)]
//
// Library features:
// tidy-alphabetical-start

View File

@ -106,6 +106,7 @@
#![allow(incomplete_features)]
#![warn(multiple_supertrait_upcastable)]
#![allow(internal_features)]
#![deny(ffi_unwind_calls)]
// Do not check link redundancy on bootstraping phase
#![allow(rustdoc::redundant_explicit_links)]
//

View File

@ -36,6 +36,7 @@
#![feature(strict_provenance)]
#![recursion_limit = "256"]
#![allow(internal_features)]
#![deny(ffi_unwind_calls)]
#[unstable(feature = "proc_macro_internals", issue = "27812")]
#[doc(hidden)]