GNU bug report logs - #77924
31.0.50; [Feature branch] Change marker implementation

Previous Next

Package: emacs;

Reported by: Gerd Möllmann <gerd.moellmann <at> gmail.com>

Date: Sat, 19 Apr 2025 16:06:02 UTC

Severity: normal

Found in version 31.0.50

Full log


View this message in rfc822 format

From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
To: Visuwesh <visuweshm <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, stefankangas <at> gmail.com, yantar92 <at> posteo.net, 77924 <at> debbugs.gnu.org, monnier <at> iro.umontreal.ca
Subject: bug#77924: 31.0.50; [Feature branch] Change marker implementation
Date: Thu, 24 Apr 2025 13:24:04 +0200
Visuwesh <visuweshm <at> gmail.com> writes:

> [வியாழன் ஏப்ரல் 24, 2025] Gerd Möllmann wrote:
>
>>>> Seems to have something to do with prog-mode, so maybe this depends on
>>>> the test file being a C file, which might be interesting for Visuwesh.
>>>
>>> I commented out (elb-smie-mode) form in the above snippet and that
>>> showed a backtrace which I could not explain.  Replacing the form with
>>> (text-mode) didn't help either.  So I'm running the benchmark with that
>>> form intact, even though the file I'm scrolling through is a text file.
>>> I am running the benchmark currently, and will report the results once
>>> they are done.
>>>
>>> Debugger entered--Lisp error: (overflow-error)
>>>   round(-0.0e+NaN)
>>>   (let ((squares (apply #'+ (mapcar #'(lambda (x) (expt x 2)) errs))))
>>> (round (/ (* 100 (sqrt squares)) elapsed)))
>>>   (format "|%2d%%\n" (let ((squares (apply #'+ (mapcar #'(lambda ...
>>> ...) errs)))) (round (/ (* 100 (sqrt squares)) elapsed))))
>>>   (insert (format "|%2d%%\n" (let ((squares (apply #'+ (mapcar #'...
>>> errs)))) (round (/ (* 100 (sqrt squares)) elapsed)))))
>>>   (let* ((--cl-var-- tests) (test nil) (l nil) (test-elapsed nil)
>>> (test-gcs nil) (test-gc-elapsed nil) (test-err nil) (elapsed 0) (gcs
>>> 0) (gc-elapsed 0) (errs nil) (--cl-var-- t)) (while (consp --cl-var--)
>>> (setq test (car --cl-var--)) (setq l (gethash test res)) (setq
>>> test-elapsed (let* ((--cl-var-- l) (x nil) (--cl-var-- 0)) (while
>>> (consp --cl-var--) (setq x (car --cl-var--)) (setq --cl-var-- (+
>>> --cl-var-- (car x))) (setq --cl-var-- (cdr --cl-var--))) --cl-var--))
>>> (setq test-gcs (let* ((--cl-var-- l) (x nil) (--cl-var-- 0)) (while
>>> (consp --cl-var--) (setq x (car --cl-var--)) (setq --cl-var-- (+
>>> --cl-var-- (car ...))) (setq --cl-var-- (cdr --cl-var--)))
>>> --cl-var--)) (setq test-gc-elapsed (let* ((--cl-var-- l) (x nil)
>>> (--cl-var-- 0)) (while (consp --cl-var--) (setq x (car --cl-var--))
>>> (setq --cl-var-- (+ --cl-var-- (car ...))) (setq --cl-var-- (cdr
>>> --cl-var--))) --cl-var--)) (setq test-err (if (cdr l)
>>> (elb-std-deviation (mapcar #'car l)))) (insert (apply #'format
>>
>> Something went wrong when computing the "err" values, apparently. Maybe
>> it'll work if you increase the number of runs the NaN goes away?
>
> Oddly enough, it throws an error as soon as I start the benchmark.  I
> don't think even a single iteration in the loop of elb-scroll-entry is
> complete, let alone a complete run.

Hm, I can't really get that to run really well either, but while trying
I found that

 - it must be run with GUI emacs -Q because it tries to enlarge-window
   which it can't on a terminal, and it assumes certain sizes
   ("stipulated sizes not whatever" error)

 - the resources directory containing xmenu.c or whatever must be a
   sibling to the benchmarks directory

 - The pattern matching the test case doesn't seem to always work. I use
   ".*scroll.*" but the report at the end shows also "setq" and
   "font-lock"???
  




This bug report was last modified 105 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.