]> git.lizzy.rs Git - rust.git/blobdiff - src/machine.rs
Rustup for panic changes
[rust.git] / src / machine.rs
index c76cc2e568f4f35465a014534b444c41344c8cad..20abfdcf54bb540c3aea8bbaa5e949bde9686f85 100644 (file)
@@ -173,6 +173,7 @@ fn find_fn(
         args: &[OpTy<'tcx, Tag>],
         dest: Option<PlaceTy<'tcx, Tag>>,
         ret: Option<mir::BasicBlock>,
+        _unwind: Option<mir::BasicBlock>,
     ) -> InterpResult<'tcx, Option<&'mir mir::Body<'tcx>>> {
         ecx.find_fn(instance, args, dest, ret)
     }
@@ -194,8 +195,14 @@ fn call_intrinsic(
         span: Span,
         instance: ty::Instance<'tcx>,
         args: &[OpTy<'tcx, Tag>],
-        dest: PlaceTy<'tcx, Tag>,
+        dest: Option<PlaceTy<'tcx, Tag>>,
+        _ret: Option<mir::BasicBlock>,
+        _unwind: Option<mir::BasicBlock>
     ) -> InterpResult<'tcx> {
+        let dest = match dest {
+            Some(dest) => dest,
+            None => throw_ub!(Unreachable)
+        };
         ecx.call_intrinsic(span, instance, args, dest)
     }
 
@@ -353,13 +360,15 @@ fn stack_push(
     fn stack_pop(
         ecx: &mut InterpCx<'mir, 'tcx, Self>,
         extra: stacked_borrows::CallId,
-    ) -> InterpResult<'tcx> {
-        Ok(ecx
+        _unwinding: bool
+    ) -> InterpResult<'tcx, StackPopInfo> {
+        ecx
             .memory
             .extra
             .stacked_borrows
             .borrow_mut()
-            .end_call(extra))
+            .end_call(extra);
+        Ok(StackPopInfo::Normal)
     }
 
     #[inline(always)]