GNU bug report logs -
#46722
test-map-into fails
Previous Next
Reported by: Glenn Morris <rgm <at> gnu.org>
Date: Tue, 23 Feb 2021 16:23:01 UTC
Severity: normal
Merged with 53365
Found in versions 27.2, 28.0.50, 29.0.50
Fixed in version 29.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:
> This kind of code is supposed to be fully deterministic, so it's quite
> worrisome. It sounds/smells like memory corruption or some other bug in
> the memory management.
>
> If you could come up with a reasonably simple code (in the sense that it
> doesn't take too long to run) to reproduce this problem with a high
> probability, maybe we can start adding some tracing to try and figure
> out what's going on.
>
> IOW, try and write a loop that runs the problematic code a couple
> hundred times, so that one of those should fail. Then try and cut down
> the code as much as possible, verifying along the way that the problem
> didn't disappear.
Here's the simplest repro I could find:
;;; foo.el -*- lexical-binding: t -*-
(require 'map)
(map-into () '(hash-table))
;;; foo.el ends here
followed by:
emacs -Q -batch -f batch-byte-compile foo.el
while emacs -Q -batch -l foo.elc; do :; done
which barfs the attached after a few seconds.
The same happens with:
(map-into () '(hash-table :test eq))
(map-into () '(hash-table :test eql))
(map-into () '(hash-table :test equal))
but not with:
(map-into () 'hash-table)
so maybe the heisenbug lies with cl-defmethod's treatment of 'head'?
Let me know if you'd like me to run anything else.
Thanks,
--
Basil
[backtrace.el (application/emacs-lisp, attachment)]
This bug report was last modified 3 years and 123 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.