From abd235837ac9340b41251da26ef91aaf07628880 Mon Sep 17 00:00:00 2001 From: Scott Olson Date: Thu, 17 Mar 2016 03:11:40 -0600 Subject: [PATCH] Simplify FieldRepr sizes. --- src/interpreter.rs | 8 ++++---- src/memory.rs | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/interpreter.rs b/src/interpreter.rs index 2988bc38811..e9c581a5681 100644 --- a/src/interpreter.rs +++ b/src/interpreter.rs @@ -310,7 +310,7 @@ impl<'a, 'tcx: 'a> Interpreter<'a, 'tcx> { for (field, operand) in fields.iter().zip(operands) { let src = try!(self.eval_operand(operand)); let field_dest = dest.offset(field.offset as isize); - try!(self.memory.copy(src, field_dest, field.repr.size())); + try!(self.memory.copy(src, field_dest, field.size)); } } _ => panic!("expected Repr::Product target"), @@ -558,10 +558,10 @@ impl<'a, 'tcx: 'a> Interpreter<'a, 'tcx> { fn make_product_repr(&self, iter: I) -> Repr where I: IntoIterator> { let mut size = 0; let fields = iter.into_iter().map(|ty| { - let repr = self.ty_to_repr(ty); + let field_size = self.ty_to_repr(ty).size(); let old_size = size; - size += repr.size(); - FieldRepr { offset: old_size, repr: repr } + size += field_size; + FieldRepr { offset: old_size, size: field_size } }).collect(); Repr::Product { size: size, fields: fields } } diff --git a/src/memory.rs b/src/memory.rs index a135f267910..73bdc4ea49a 100644 --- a/src/memory.rs +++ b/src/memory.rs @@ -35,7 +35,7 @@ pub struct Pointer { #[derive(Clone, Debug, PartialEq, Eq)] pub struct FieldRepr { pub offset: usize, - pub repr: Repr, + pub size: usize, } #[derive(Clone, Debug, PartialEq, Eq)]