From 012e30622c45d2757fefda1225237c98f034abeb Mon Sep 17 00:00:00 2001 From: GnomedDev Date: Sun, 27 Oct 2024 21:20:47 +0000 Subject: [PATCH] Explain why clippy's HIR const eval exists --- clippy_utils/src/consts.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/clippy_utils/src/consts.rs b/clippy_utils/src/consts.rs index a1cfb7be647..0dbc7972fe9 100644 --- a/clippy_utils/src/consts.rs +++ b/clippy_utils/src/consts.rs @@ -1,3 +1,7 @@ +//! A simple const eval API, for use on arbitrary HIR expressions. +//! +//! This cannot use rustc's const eval, aka miri, as arbitrary HIR expressions cannot be lowered to +//! executable MIR bodies, so we have to do this instead. #![allow(clippy::float_cmp)] use crate::macros::HirNode; @@ -379,6 +383,8 @@ fn cmp_s_u(s: i128, u: u128) -> Ordering { /// The context required to evaluate a constant expression. /// /// This is currently limited to constant folding and reading the value of named constants. +/// +/// See the module level documentation for some context. pub struct ConstEvalCtxt<'tcx> { tcx: TyCtxt<'tcx>, param_env: ParamEnv<'tcx>,