diff options
| author | Karl Heuer | 1995-07-17 22:09:03 +0000 |
|---|---|---|
| committer | Karl Heuer | 1995-07-17 22:09:03 +0000 |
| commit | 056c80f9c32012062e6b780087ddf083423ad8fe (patch) | |
| tree | 8b99f59caf0a28944e6d41e8bbfd85eafe6c30ce /src/bytecode.c | |
| parent | 93548af1a366ff5508bac6a7e622717a1fbdac33 (diff) | |
| download | emacs-056c80f9c32012062e6b780087ddf083423ad8fe.tar.gz emacs-056c80f9c32012062e6b780087ddf083423ad8fe.zip | |
(Fbyte_code): For Beqlsign, if both args are ints,
compare as ints.
Diffstat (limited to 'src/bytecode.c')
| -rw-r--r-- | src/bytecode.c | 13 |
1 files changed, 12 insertions, 1 deletions
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.") | |||
| 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: |