diff options
| author | bors <bors@rust-lang.org> | 2019-07-15 05:40:41 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2019-07-15 05:40:41 +0000 |
| commit | 9bb855cda0c5ae97faf5dbf1cd4935dd37fad066 (patch) | |
| tree | 2a4b6a87d77cc27a0b336d52af5fabcbcc686433 | |
| parent | e452e2929d72a20ed0ceb09c48b6cd76b0a9a898 (diff) | |
| parent | 6c293d8101618e0d3467a69adb3fb49a802de45d (diff) | |
| download | rust-9bb855cda0c5ae97faf5dbf1cd4935dd37fad066.tar.gz rust-9bb855cda0c5ae97faf5dbf1cd4935dd37fad066.zip | |
Auto merge of #62674 - RalfJung:miri-abi, r=eddyb
RustIntrinsic and PlatformIntrinsic are also the same ABI as Rust r? @eddyb
| -rw-r--r-- | src/librustc_mir/interpret/terminator.rs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/librustc_mir/interpret/terminator.rs b/src/librustc_mir/interpret/terminator.rs index c11e5e11923..75690b4d361 100644 --- a/src/librustc_mir/interpret/terminator.rs +++ b/src/librustc_mir/interpret/terminator.rs @@ -280,8 +280,13 @@ impl<'mir, 'tcx, M: Machine<'mir, 'tcx>> InterpCx<'mir, 'tcx, M> { _ => bug!("unexpected callee ty: {:?}", instance_ty), } }; - // Rust and RustCall are compatible - let normalize_abi = |abi| if abi == Abi::RustCall { Abi::Rust } else { abi }; + let normalize_abi = |abi| match abi { + Abi::Rust | Abi::RustCall | Abi::RustIntrinsic | Abi::PlatformIntrinsic => + // These are all the same ABI, really. + Abi::Rust, + abi => + abi, + }; if normalize_abi(caller_abi) != normalize_abi(callee_abi) { return err!(FunctionAbiMismatch(caller_abi, callee_abi)); } |
