# HG changeset patch # User martinb # Date 990411312 0 # Node ID 1638aacf421d3c9a0bcc64defd4300d77dcc4103 # Parent 2b0ea82d329f050d6a0531bcc2e6d0985a2ba138 [xemacs-hg @ 2001-05-21 02:15:12 by martinb] Fix incorrect optimization: (= 0 0 (random 2)) ==> 0 or 1. diff -r 2b0ea82d329f -r 1638aacf421d lisp/ChangeLog --- a/lisp/ChangeLog Mon May 21 01:54:05 2001 +0000 +++ b/lisp/ChangeLog Mon May 21 02:15:12 2001 +0000 @@ -1,3 +1,9 @@ +2001-05-21 Martin Buchholz + + * byte-optimize.el (=): `=' is not a binary predicate! + Fix incorrect optimization: (= 0 0 (random 2)) ==> 0 or 1. + Use byte-optimize-predicate, not byte-optimize-binary-predicate, + 2001-05-20 Martin Buchholz * bytecomp.el (byte-compile-arithcompare): diff -r 2b0ea82d329f -r 1638aacf421d lisp/byte-optimize.el --- a/lisp/byte-optimize.el Mon May 21 01:54:05 2001 +0000 +++ b/lisp/byte-optimize.el Mon May 21 02:15:12 2001 +0000 @@ -855,13 +855,13 @@ (put 'max 'byte-optimizer 'byte-optimize-associative-math) (put 'min 'byte-optimizer 'byte-optimize-associative-math) -(put '= 'byte-optimizer 'byte-optimize-binary-predicate) (put 'eq 'byte-optimizer 'byte-optimize-binary-predicate) (put 'eql 'byte-optimizer 'byte-optimize-binary-predicate) (put 'equal 'byte-optimizer 'byte-optimize-binary-predicate) (put 'string= 'byte-optimizer 'byte-optimize-binary-predicate) (put 'string-equal 'byte-optimizer 'byte-optimize-binary-predicate) +(put '= 'byte-optimizer 'byte-optimize-predicate) (put '< 'byte-optimizer 'byte-optimize-predicate) (put '> 'byte-optimizer 'byte-optimize-predicate) (put '<= 'byte-optimizer 'byte-optimize-predicate)