summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2019-02-28 08:52:15 +0000
committerbors <bors@rust-lang.org>2019-02-28 08:52:15 +0000
commit2aa4c46cfdd726e97360c2734835aa3515e8c858 (patch)
tree84a07a2b096b57fb9562a7bde2d5a8dbc53d806d /src
parentb270e14539a4fc749bde9d2c1ec962b878a72a05 (diff)
parentbd1f0327eebce569680b1338e0814fde57a58971 (diff)
downloadrust-1.33.0.tar.gz
rust-1.33.0.zip
Auto merge of #58795 - Mark-Simulacrum:stable-next, r=Mark-Simulacrum 1.33.0
Revert abort on unwinding through FFI on stable

This is entirely done to allow us more time for discussion about what behavior we want to specify here.
Diffstat (limited to 'src')
-rw-r--r--src/librustc_mir/build/mod.rs2
-rw-r--r--src/test/run-pass/abort-on-c-abi.rs2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/librustc_mir/build/mod.rs b/src/librustc_mir/build/mod.rs
index 2bf2824d835..89542011aa6 100644
--- a/src/librustc_mir/build/mod.rs
+++ b/src/librustc_mir/build/mod.rs
@@ -611,7 +611,7 @@ fn should_abort_on_panic<'a, 'gcx, 'tcx>(tcx: TyCtxt<'a, 'gcx, 'tcx>,
     // unwind anyway. Don't stop them.
     let attrs = &tcx.get_attrs(fn_def_id);
     match attr::find_unwind_attr(Some(tcx.sess.diagnostic()), attrs) {
-        None => true,
+        None => false, // FIXME(#58794)
         Some(UnwindAttr::Allowed) => false,
         Some(UnwindAttr::Aborts) => true,
     }
diff --git a/src/test/run-pass/abort-on-c-abi.rs b/src/test/run-pass/abort-on-c-abi.rs
index df94cd57186..c3991bd2e59 100644
--- a/src/test/run-pass/abort-on-c-abi.rs
+++ b/src/test/run-pass/abort-on-c-abi.rs
@@ -1,4 +1,5 @@
 #![allow(unused_must_use)]
+#![feature(unwind_attributes)]
 // Since we mark some ABIs as "nounwind" to LLVM, we must make sure that
 // we never unwind through them.
 
@@ -10,6 +11,7 @@ use std::io::prelude::*;
 use std::io;
 use std::process::{Command, Stdio};
 
+#[unwind(aborts)] // FIXME(#58794)
 extern "C" fn panic_in_ffi() {
     panic!("Test");
 }