From 061fd14d74ec5738dbca1c8bc9d6bf4085af9ed0 Mon Sep 17 00:00:00 2001 From: Fabian Fleischer <50590395+fab1ano@users.noreply.github.com> Date: Thu, 26 Feb 2026 14:35:36 -0500 Subject: [PATCH] Fix off-by-one in modulo operator (#3486) --- src/builtin.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/builtin.c b/src/builtin.c index b6169cd7..e38bb36b 100644 --- a/src/builtin.c +++ b/src/builtin.c @@ -356,7 +356,7 @@ jv binop_divide(jv a, jv b) { } } -#define dtoi(n) ((n) < INTMAX_MIN ? INTMAX_MIN : -(n) < INTMAX_MIN ? INTMAX_MAX : (intmax_t)(n)) +#define dtoi(n) ((n) < INTMAX_MIN ? INTMAX_MIN : -(n) <= INTMAX_MIN ? INTMAX_MAX : (intmax_t)(n)) jv binop_mod(jv a, jv b) { if (jv_get_kind(a) == JV_KIND_NUMBER && jv_get_kind(b) == JV_KIND_NUMBER) { double na = jv_number_value(a);