diff --git a/src/interpreter/mod.rs b/src/interpreter/mod.rs index 16f260852808..0506335dc221 100644 --- a/src/interpreter/mod.rs +++ b/src/interpreter/mod.rs @@ -198,18 +198,18 @@ impl<'a, 'tcx> EvalContext<'a, 'tcx> { Integral(ConstInt::InferSigned(_)) => unreachable!(), Integral(ConstInt::I8(i)) => i2p!(i, 1), Integral(ConstInt::U8(i)) => i2p!(i, 1), + Integral(ConstInt::Isize(ConstIsize::Is16(i))) | Integral(ConstInt::I16(i)) => i2p!(i, 2), + Integral(ConstInt::Usize(ConstUsize::Us16(i))) | Integral(ConstInt::U16(i)) => i2p!(i, 2), + Integral(ConstInt::Isize(ConstIsize::Is32(i))) | Integral(ConstInt::I32(i)) => i2p!(i, 4), + Integral(ConstInt::Usize(ConstUsize::Us32(i))) | Integral(ConstInt::U32(i)) => i2p!(i, 4), + Integral(ConstInt::Isize(ConstIsize::Is64(i))) | Integral(ConstInt::I64(i)) => i2p!(i, 8), + Integral(ConstInt::Usize(ConstUsize::Us64(i))) | Integral(ConstInt::U64(i)) => i2p!(i, 8), - Integral(ConstInt::Isize(ConstIsize::Is16(i))) => i2p!(i, 2), - Integral(ConstInt::Isize(ConstIsize::Is32(i))) => i2p!(i, 4), - Integral(ConstInt::Isize(ConstIsize::Is64(i))) => i2p!(i, 8), - Integral(ConstInt::Usize(ConstUsize::Us16(i))) => i2p!(i, 2), - Integral(ConstInt::Usize(ConstUsize::Us32(i))) => i2p!(i, 4), - Integral(ConstInt::Usize(ConstUsize::Us64(i))) => i2p!(i, 8), Str(ref s) => { let psize = self.memory.pointer_size(); let static_ptr = self.memory.allocate(s.len(), 1)?; diff --git a/src/memory.rs b/src/memory.rs index 534276b7378c..d4f8eb58f2f7 100644 --- a/src/memory.rs +++ b/src/memory.rs @@ -127,7 +127,7 @@ impl<'a, 'tcx> Memory<'a, 'tcx> { mem } - pub fn allocations<'b>(&'b self) -> ::std::collections::hash_map::Iter<'b, AllocId, Allocation> { + pub fn allocations(&self) -> ::std::collections::hash_map::Iter { self.alloc_map.iter() } diff --git a/src/primval.rs b/src/primval.rs index 966196d8d1a5..1ec751681703 100644 --- a/src/primval.rs +++ b/src/primval.rs @@ -1,3 +1,6 @@ +#![allow(unknown_lints)] +#![allow(float_cmp)] + use rustc::mir::repr as mir; use error::{EvalError, EvalResult};