From 6b697c5c3e6a10667258f477db50723da8bfe56a Mon Sep 17 00:00:00 2001 From: Paul Masurel Date: Tue, 18 Aug 2026 17:45:34 +0200 Subject: [PATCH] Test signed SUBTRACT result from unsigned literals --- jitexpr/src/functions/subtract.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/jitexpr/src/functions/subtract.rs b/jitexpr/src/functions/subtract.rs index 0dc85e509..69976c961 100644 --- a/jitexpr/src/functions/subtract.rs +++ b/jitexpr/src/functions/subtract.rs @@ -238,4 +238,14 @@ mod tests { // SAFETY: The expression has no inputs and returns an absent value. assert_eq!(unsafe { compiled.call(&[]).as_i64() }, None); } + + #[test] + fn test_compile_time_i64() { + let expression = deserialize("(SUBTRACT 1u64 10u64)").unwrap(); + let mut compiled = compile(&expression, &HashMap::new()).unwrap(); + + assert_eq!(compiled.result_type(), VarType::I64); + // SAFETY: The expression has no inputs and returns an absent value. + assert_eq!(unsafe { compiled.call(&[]).as_i64() }, Some(-9i64)); + } }