comparison src/bytecode.c @ 12527:ebaf016075f1

(Fbyte_code): For Beqlsign, if both args are ints, compare as ints.
author Karl Heuer <kwzh@gnu.org>
date Mon, 17 Jul 1995 22:09:03 +0000
parents c681703f7ce3
children bbd93011edef
comparison
equal deleted inserted replaced
12526:b1afb2a250a1 12527:ebaf016075f1
756 756
757 case Beqlsign: 757 case Beqlsign:
758 v2 = POP; v1 = TOP; 758 v2 = POP; v1 = TOP;
759 CHECK_NUMBER_OR_FLOAT_COERCE_MARKER (v1, 0); 759 CHECK_NUMBER_OR_FLOAT_COERCE_MARKER (v1, 0);
760 CHECK_NUMBER_OR_FLOAT_COERCE_MARKER (v2, 0); 760 CHECK_NUMBER_OR_FLOAT_COERCE_MARKER (v2, 0);
761 TOP = (XFLOATINT (v1) == XFLOATINT (v2)) ? Qt : Qnil; 761 #ifdef LISP_FLOAT_TYPE
762 if (FLOATP (num1) || FLOATP (num2))
763 {
764 double f1, f2;
765
766 f1 = (FLOATP (v1) ? XFLOAT (v1)->data : XINT (v1));
767 f2 = (FLOATP (v2) ? XFLOAT (v2)->data : XINT (v2));
768 TOP = (f1 == f2 ? Qt : Qnil);
769 }
770 else
771 #endif
772 TOP = (XINT (num1) == XINT (num2) ? Qt : Qnil);
762 break; 773 break;
763 774
764 case Bgtr: 775 case Bgtr:
765 v1 = POP; 776 v1 = POP;
766 TOP = Fgtr (TOP, v1); 777 TOP = Fgtr (TOP, v1);