Subject: bug#77046: 31.0.50; Emacs sometimes crashes

From: Gerd Möllmann <[email-masked]>
Date: Sat, 22 Mar 2025 13:04:58 +0100

Eli Zaretskii <[email-masked]> writes:

>> From: Markus Triska <[email-masked]>
>> Cc: [email-masked],  [email-masked]
>> Date: Sat, 22 Mar 2025 09:00:27 +0100
>> 
>> Please see below for the new backtrace, using:
>> 
>>     $ ./emacs --version
>>     GNU Emacs 31.0.50
>>     Development version cf7fdd374ac9 on master branch; build date 2025-03-22.
>> 
>> Thank you and all the best,
>> Markus
>> 
>> #0  0x000055555575e5a2 in internal_equal_1 (o1=0x7ffff47f2fac, o2=o2@entry=0x555555a008e4, equal_kind=equal_kind@entry=EQUAL_PLAIN, depth=depth@entry=0, ht=ht@entry=0x7fffffffc4f8) at fns.c:2836
>
> Line 2836 of fns.c is this:
>
>   static bool
>   internal_equal_1 (Lisp_Object o1, Lisp_Object o2, enum equal_kind equal_kind,
> 		    int depth, Lisp_Object *ht)
>   { <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>    tail_recurse:
>     if (depth > 10)
>
> So the only way I can understand how that line could trigger a crash
> is that you have C stack overflow, something that is hard to believe
> with just 55 call-stack frames in the backtrace.  IOW, it's a mystery
> how and why does this crash in your case.
>
> Maybe Gerd could have some ideas.

Not really, I'm afraid, except to build Emacs with debug, configure with
--enable-checking=yes,glyphs and try to get it reproduced.