about summary refs log tree commit diff
path: root/library/std/src
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2023-04-13 21:58:37 +0200
committerGitHub <noreply@github.com>2023-04-13 21:58:37 +0200
commite85ecbbcdcc577d47baae3c0c537c82056340ac9 (patch)
treee767cbd887e147bd04de445d85e5a4fd9781b804 /library/std/src
parent232eb698edecb9bc7d5f2bcb9305fdd1291ff63f (diff)
parentb07a470d1ae47bbae86df0b9dc6de624bcdf0357 (diff)
downloadrust-e85ecbbcdcc577d47baae3c0c537c82056340ac9.tar.gz
rust-e85ecbbcdcc577d47baae3c0c537c82056340ac9.zip
Rollup merge of #110233 - nbdd0121:intrinsic, r=tmiasko
Make rust-intrinsic ABI unwindable

Fix #104451, fix https://github.com/rust-lang/miri/issues/2839

r? `@RalfJung`
Diffstat (limited to 'library/std/src')
-rw-r--r--library/std/src/panicking.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/library/std/src/panicking.rs b/library/std/src/panicking.rs
index e505466e535..a46a29cbad6 100644
--- a/library/std/src/panicking.rs
+++ b/library/std/src/panicking.rs
@@ -498,6 +498,7 @@ pub unsafe fn r#try<R, F: FnOnce() -> R>(f: F) -> Result<R, Box<dyn Any + Send>>
     // This function cannot be marked as `unsafe` because `intrinsics::r#try`
     // expects normal function pointers.
     #[inline]
+    #[rustc_nounwind] // `intrinsic::r#try` requires catch fn to be nounwind
     fn do_catch<F: FnOnce() -> R, R>(data: *mut u8, payload: *mut u8) {
         // SAFETY: this is the responsibility of the caller, see above.
         //