GNU bug report logs - #68668
30.0.50; Invalid hash table test: tab-bar--auto-width-hash-test

Previous Next

Package: emacs;

Reported by: No Wayman <iarchivedmywholelife <at> gmail.com>

Date: Tue, 23 Jan 2024 03:46:01 UTC

Severity: normal

Tags: confirmed

Merged with 68821

Fixed in version 30.1

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

Bug is archived. No further changes may be made.

Full log


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

From: Andrea Corallo <acorallo <at> gnu.org>
To: john muhl <jm <at> pub.pink>
Cc: Mekeor Melire <mekeor <at> posteo.de>, Eli Zaretskii <eliz <at> gnu.org>,
 Mattias EngdegÄrd <mattias.engdegard <at> gmail.com>,
 68668 <at> debbugs.gnu.org
Subject: Re: bug#68668: 30.0.50; Invalid hash table test:
 tab-bar--auto-width-hash-test
Date: Wed, 31 Jan 2024 05:13:49 -0500
Andrea Corallo <acorallo <at> gnu.org> writes:

> Andrea Corallo <acorallo <at> gnu.org> writes:
>
>> john muhl <jm <at> pub.pink> writes:
>>
>>> Eli Zaretskii <eliz <at> gnu.org> writes:
>>>
>>>>> From: Mekeor Melire <mekeor <at> posteo.de>
>>>>> Date: Mon, 29 Jan 2024 22:53:45 +0000
>>>>>
>>>>> Hello, I just wanted to share a work-around for this bug, even though it
>>>>> is probably bad for performance:
>>>>>
>>>>> 	(setopt native-comp-enable-subr-trampolines nil)
>>>>
>>>> Can someone please post a recipe for reproducing this?  Does this
>>>> happen if you say "make bootstrap"?
>>>
>>> This most reliable way to reproduce it for me is:
>>>
>>>   git clone https://git.savannah.gnu.org/git/emacs.git
>>>   cd emacs
>>>   make bootstrap
>>>   make test/src/keymap-tests.log
>>>
>>> It reproduces on 32 & 64bit systems, x86_64, armv7l and aarch64.
>>> The problem first shows up with keymap-tests in 54d3de64e19.
>>> Attached is the keymap-tests.log.
>>
>> I can reproduce this recipe, smells of some some function being moked
>> that the native compiler needs in order to work.  I'll try to have a
>> look.
>>
>>   Andrea
>
> Okay investigation in progress, here a minimal reproducer:
>
> (describe-buffer-bindings (current-buffer))
> (comp-trampoline-compile 'message)
>
> What is going on is that for some reason after calling
> 'describe-buffer-bindings' an hash table with
> 'tab-bar--auto-width-hash-test' as test is leaked into the compilation
> environment.
>
> As this is passed to the spawned process we fail as there
> 'tab-bar--auto-width-hash-test' is not defined.
>
>   Andrea


Okay something very wierd hash related is going on here:

If I evaluate:

(progn
  (describe-buffer-bindings (current-buffer))
  (require 'comp)
  (make-comp-data-container))

I get

#s(comp-data-container nil #s(hash-table test tab-bar--auto-width-hash-test))

In place of the expected

#s(comp-data-container nil #s(hash-table test comp-imm-equal-test))

Adding Mattias in Cc.

Thanks

  Andrea




This bug report was last modified 1 year and 172 days ago.

Previous Next


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