GNU bug report logs - #46722
test-map-into fails

Previous Next

Package: emacs;

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


Message #18 received at 46722 <at> debbugs.gnu.org (full text, mbox):

From: "Basil L. Contovounesios" <contovob <at> tcd.ie>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 46722 <at> debbugs.gnu.org
Subject: Re: bug#46722: test-map-into fails
Date: Tue, 23 Feb 2021 22:50:59 +0000
"Basil L. Contovounesios" <contovob <at> tcd.ie> writes:

> 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'?

For some reason looping in Lisp doesn't fail though:

  ;;; foo.el -*- lexical-binding: t -*-
  (require 'map)
  (while (map-into () '(hash-table)))
  ;;; foo.el ends here

when run as:

  emacs -Q -batch -f batch-byte-compile foo.el
  emacs -Q -batch -l foo.elc

I actually forgot I left this running in the background for over an
hour because compilation-finish-functions never ran.

The same happens if I change '-batch -l' to '-script'.

-- 
Basil




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.