]> git.lizzy.rs Git - rust.git/commitdiff
use throw_machine_stop macro
authorRalf Jung <post@ralfj.de>
Mon, 2 Dec 2019 10:02:11 +0000 (11:02 +0100)
committerRalf Jung <post@ralfj.de>
Tue, 3 Dec 2019 22:31:44 +0000 (23:31 +0100)
src/shims/foreign_items.rs
src/shims/intrinsics.rs

index 52e04aea3045cdb4cf7015c308a8a2b063fa6424..316cc686ad77d301e7dd751fdbddef88f4bbc185 100644 (file)
@@ -154,8 +154,7 @@ fn emulate_foreign_item(
             "exit" | "ExitProcess" => {
                 // it's really u32 for ExitProcess, but we have to put it into the `Exit` variant anyway
                 let code = this.read_scalar(args[0])?.to_i32()?;
-                let ti = Box::new(TerminationInfo::Exit(code.into()));
-                return Err(InterpError::MachineStop(ti).into());
+                throw_machine_stop!(TerminationInfo::Exit(code.into()));
             }
             _ => {
                 if let Some(p) = ret {
index 0cb51d593199ea83fe0bb2971ae24793d09ea30d..57b77a8b749025f349476145ff804c54fe5a0a18 100644 (file)
@@ -34,8 +34,7 @@ fn call_intrinsic(
         // Handle diverging intrinsics.
         let (dest, ret) = match intrinsic_name {
             "abort" => {
-                let ti = Box::new(TerminationInfo::Abort);
-                return Err(InterpError::MachineStop(ti).into());
+                throw_machine_stop!(TerminationInfo::Abort);
             }
             "miri_start_panic" => return this.handle_miri_start_panic(args, unwind),
             _ => {