diff options
| author | Ralf Jung <post@ralfj.de> | 2024-09-29 11:53:23 +0200 |
|---|---|---|
| committer | Ralf Jung <post@ralfj.de> | 2024-10-01 21:45:35 +0200 |
| commit | 4891dd4627be38fa6133fcf3cfb0c1a65867bf87 (patch) | |
| tree | eb5ad50345bdedb75b13a4739478cfa5fd92fbc0 | |
| parent | ad3464493d7d04199e926344d854921916fd1637 (diff) | |
| download | rust-4891dd4627be38fa6133fcf3cfb0c1a65867bf87.tar.gz rust-4891dd4627be38fa6133fcf3cfb0c1a65867bf87.zip | |
make InterpResult a dedicated type to avoid accidentally discarding the error
| -rw-r--r-- | clippy_utils/src/consts.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/clippy_utils/src/consts.rs b/clippy_utils/src/consts.rs index bf47cf6d372..53a1170d6a6 100644 --- a/clippy_utils/src/consts.rs +++ b/clippy_utils/src/consts.rs @@ -870,10 +870,10 @@ pub fn mir_to_const<'tcx>(tcx: TyCtxt<'tcx>, result: mir::Const<'tcx>) -> Option let range = alloc_range(offset + size * idx, size); let val = alloc.read_scalar(&tcx, range, /* read_provenance */ false).ok()?; res.push(match flt { - FloatTy::F16 => Constant::F16(f16::from_bits(val.to_u16().ok()?)), - FloatTy::F32 => Constant::F32(f32::from_bits(val.to_u32().ok()?)), - FloatTy::F64 => Constant::F64(f64::from_bits(val.to_u64().ok()?)), - FloatTy::F128 => Constant::F128(f128::from_bits(val.to_u128().ok()?)), + FloatTy::F16 => Constant::F16(f16::from_bits(val.to_u16().discard_err()?)), + FloatTy::F32 => Constant::F32(f32::from_bits(val.to_u32().discard_err()?)), + FloatTy::F64 => Constant::F64(f64::from_bits(val.to_u64().discard_err()?)), + FloatTy::F128 => Constant::F128(f128::from_bits(val.to_u128().discard_err()?)), }); } Some(Constant::Vec(res)) @@ -903,7 +903,7 @@ fn mir_is_empty<'tcx>(tcx: TyCtxt<'tcx>, result: mir::Const<'tcx>) -> Option<boo .read_scalar(&tcx, alloc_range(offset + ptr_size, ptr_size), false) .ok()? .to_target_usize(&tcx) - .ok()?; + .discard_err()?; Some(len == 0) } else { None |
