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)] #![warn(multiple_supertrait_upcastable)]
#![allow(internal_features)] #![allow(internal_features)]
#![allow(rustdoc::redundant_explicit_links)] #![allow(rustdoc::redundant_explicit_links)]
#![deny(ffi_unwind_calls)]
// //
// Library features: // Library features:
// tidy-alphabetical-start // tidy-alphabetical-start

View File

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

View File

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