From 4ec2831ebcf96775fe6de97ab4c73eb1368b667a Mon Sep 17 00:00:00 2001 From: bjorn3 Date: Mon, 13 Jul 2020 19:45:46 +0200 Subject: [PATCH] No silent truncating of SwitchInt values --- src/base.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/base.rs b/src/base.rs index 1bd5559c3350..a1e7a33d607f 100644 --- a/src/base.rs +++ b/src/base.rs @@ -283,7 +283,7 @@ fn codegen_fn_content(fx: &mut FunctionCx<'_, '_, impl Backend>) { let mut switch = ::cranelift_frontend::Switch::new(); for (i, value) in values.iter().enumerate() { let block = fx.get_block(targets[i]); - switch.set_entry(*value as u64, block); + switch.set_entry((*value).try_into().unwrap(), block); } let otherwise_block = fx.get_block(targets[targets.len() - 1]); switch.emit(&mut fx.bcx, discr, otherwise_block);