]> git.lizzy.rs Git - rust.git/blobdiff - src/librustc/mir/interpret/pointer.rs
Miri core engine: use throw_ub instead of throw_panic
[rust.git] / src / librustc / mir / interpret / pointer.rs
index 78320c769f680f388550b61cd11ce0730b58e113..0b27f512e55b8c44b36d4f9d64837fe1ef5ee314 100644 (file)
@@ -1,6 +1,5 @@
 use super::{AllocId, InterpResult};
 
-use crate::mir;
 use crate::ty::layout::{self, HasDataLayout, Size};
 
 use rustc_macros::HashStable;
@@ -88,13 +87,13 @@ fn overflowing_signed_offset(&self, val: u64, i: i128) -> (u64, bool) {
     #[inline]
     fn offset<'tcx>(&self, val: u64, i: u64) -> InterpResult<'tcx, u64> {
         let (res, over) = self.overflowing_offset(val, i);
-        if over { throw_panic!(Overflow(mir::BinOp::Add)) } else { Ok(res) }
+        if over { throw_ub!(PointerArithOverflow) } else { Ok(res) }
     }
 
     #[inline]
     fn signed_offset<'tcx>(&self, val: u64, i: i64) -> InterpResult<'tcx, u64> {
         let (res, over) = self.overflowing_signed_offset(val, i128::from(i));
-        if over { throw_panic!(Overflow(mir::BinOp::Add)) } else { Ok(res) }
+        if over { throw_ub!(PointerArithOverflow) } else { Ok(res) }
     }
 }