--- Begin Message ---
Subject: |
26.0.50; data-test-popcnt fails in 32bit |
Date: |
Wed, 27 Dec 2017 10:42:47 -0500 |
Package: Emacs
Version: 26.0.50
"make check" keeps failing for me in test/src/data-tests.el on
data-tests-logcount, because the integer constants used in
data-tests-popcnt are too large for my 32bit build and hence are turned
into floats.
The backtrace it gives me is below.
The 1431655765.0 constant is the result of reading #x55555555!
Stefan
Test data-tests-logcount backtrace:
logand(127 1431655765.0)
(- byte (logand (lsh byte -1) 1431655765.0))
(setq byte (- byte (logand (lsh byte -1) 1431655765.0)))
data-tests-popcnt(-255)
(= (logcount n) (data-tests-popcnt n))
(setq --cl-flag-- (= (logcount n) (data-tests-popcnt n)))
(progn (setq n (car --cl-var--)) (setq --cl-flag-- (= (logcount n) (
(and (consp --cl-var--) (progn (setq n (car --cl-var--)) (setq --cl-
(while (and (consp --cl-var--) (progn (setq n (car --cl-var--)) (set
(let* ((--cl-var-- (number-sequence -255 255)) (n nil) (--cl-flag--
(setq value-347 (let* ((--cl-var-- (number-sequence -255 255)) (n ni
(unwind-protect (setq value-347 (let* ((--cl-var-- (number-sequence
(if (unwind-protect (setq value-347 (let* ((--cl-var-- (number-seque
(let (form-description-348) (if (unwind-protect (setq value-347 (let
(let ((value-347 (gensym "ert-form-evaluation-aborted-"))) (let (for
(lambda nil (let ((value-347 (gensym "ert-form-evaluation-aborted-")
ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
ert-run-test(#s(ert-test :name data-tests-logcount :documentation ni
ert-run-or-rerun-test(#s(ert--stats :selector t :tests [#s(ert-test
ert-run-tests(t #f(compiled-function (event-type &rest event-args) #
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit(nil)
eval((ert-run-tests-batch-and-exit nil))
command-line-1(("-L" ":." "-l" "ert" "-l" "src/data-tests.el" "--eva
command-line()
normal-top-level()
Test data-tests-logcount condition:
(wrong-type-argument integer-or-marker-p 1431655765.0)
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#29865: 26.0.50; data-test-popcnt fails in 32bit |
Date: |
Mon, 15 Jul 2019 09:02:06 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) |
> Is this still relevant now that Emacs has bignum support?
No, indeed: I don't see this test error any more, so it's likely been
fixed by the introduction of bignums.
Stefan
--- End Message ---