From 056c80f9c32012062e6b780087ddf083423ad8fe Mon Sep 17 00:00:00 2001 From: Karl Heuer Date: Mon, 17 Jul 1995 22:09:03 +0000 Subject: [PATCH] (Fbyte_code): For Beqlsign, if both args are ints, compare as ints. --- src/bytecode.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/bytecode.c b/src/bytecode.c index 39e2ae4a434..ac2e3ab1824 100644 --- a/src/bytecode.c +++ b/src/bytecode.c @@ -758,7 +758,18 @@ If the third argument is incorrect, Emacs may crash.") v2 = POP; v1 = TOP; CHECK_NUMBER_OR_FLOAT_COERCE_MARKER (v1, 0); CHECK_NUMBER_OR_FLOAT_COERCE_MARKER (v2, 0); - TOP = (XFLOATINT (v1) == XFLOATINT (v2)) ? Qt : Qnil; +#ifdef LISP_FLOAT_TYPE + if (FLOATP (num1) || FLOATP (num2)) + { + double f1, f2; + + f1 = (FLOATP (v1) ? XFLOAT (v1)->data : XINT (v1)); + f2 = (FLOATP (v2) ? XFLOAT (v2)->data : XINT (v2)); + TOP = (f1 == f2 ? Qt : Qnil); + } + else +#endif + TOP = (XINT (num1) == XINT (num2) ? Qt : Qnil); break; case Bgtr: -- 2.39.2