From 7d406c9146d5a33abcc5e2a105d8856c8c7057d5 Mon Sep 17 00:00:00 2001 From: bjorn3 Date: Fri, 19 Oct 2018 14:23:20 +0200 Subject: [PATCH] Fix errors --- src/librustc_mir/interpret/operand.rs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/librustc_mir/interpret/operand.rs b/src/librustc_mir/interpret/operand.rs index 8d2190d22c0dc..f928997dde798 100644 --- a/src/librustc_mir/interpret/operand.rs +++ b/src/librustc_mir/interpret/operand.rs @@ -775,11 +775,13 @@ impl<'a, 'mir, 'tcx, M: Machine<'a, 'mir, 'tcx>> EvalContext<'a, 'mir, 'tcx, M> /// This is used by [priroda](https://github.com/oli-obk/priroda) to get an OpTy from a local pub fn read_local_of_frame( &self, - frame: &super::Frame, + frame: &super::Frame<'mir, 'tcx>, local: mir::Local ) -> EvalResult<'tcx, OpTy<'tcx>> { - let op = frame.locals[local].access()?; - let layout = self.layout_of_local(frame, local)?; - OpTy { op, layout } + let op = *frame.locals[local].access()?; + let local_ty = frame.mir.local_decls[local].ty; + let local_ty = self.monomorphize(local_ty, frame.instance.substs); + let layout = self.layout_of(local_ty)?; + Ok(OpTy { op, layout }) } }