From a29eca5d82d36bdbda5cccf317b9c0b3e33ed23d Mon Sep 17 00:00:00 2001 From: varkor Date: Tue, 23 Apr 2019 00:03:00 +0100 Subject: [PATCH] Fix issue with const params in operand.rs --- src/librustc_mir/interpret/operand.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/librustc_mir/interpret/operand.rs b/src/librustc_mir/interpret/operand.rs index df6d4568ab3..ed7c316e3da 100644 --- a/src/librustc_mir/interpret/operand.rs +++ b/src/librustc_mir/interpret/operand.rs @@ -524,7 +524,8 @@ impl<'a, 'mir, 'tcx, M: Machine<'a, 'mir, 'tcx>> InterpretCx<'a, 'mir, 'tcx, M> layout: Option>, ) -> EvalResult<'tcx, OpTy<'tcx, M::PointerTag>> { let op = match val.val { - ConstValue::Param(_) | ConstValue::Infer(_) | ConstValue::Placeholder(_) => bug!(), + ConstValue::Param(_) => return err!(TooGeneric), + ConstValue::Infer(_) | ConstValue::Placeholder(_) => bug!(), ConstValue::ByRef(ptr, alloc) => { // We rely on mutability being set correctly in that allocation to prevent writes // where none should happen -- and for `static mut`, we copy on demand anyway.