Subject: bug#62504: closed (Re: bug#62504: 30.0.50; SEGFAULT On M-x)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 11 Sep 2023 23:58:02 +0000

Your bug report

#62504: 30.0.50; SEGFAULT On M-x

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
62504: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62504
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#62504: 30.0.50; SEGFAULT On M-x
From: Stefan Kangas <[email-masked]>
To: Jacob Faibussowitsch <[email-masked]>
Cc: Eli Zaretskii <[email-masked]>, [email-masked], Andrea Corallo <[email-masked]>
Date: Mon, 11 Sep 2023 16:56:55 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Jacob Faibussowitsch <[email-masked]> writes:

> Segfaults and errors are gone with this change.

It seems like this issue was fixed, but it was left open in the bug
tracker.  I'm therefore closing it now.

Subject: 30.0.50; SEGFAULT On M-x
From: Jacob Faibussowitsch <[email-masked]>
To: [email-masked]
Date: Tue, 28 Mar 2023 11:25:49 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

This bug is twofold and appears to be related to bug#62446 and bug#61917. I produce a much smaller reproducer that generates the same kind of error as bug#61917, namely `(wrong-number-of-arguments #<subr signal> 2)`. Segfaults only occur after the following commit:

commit 52b67740d10df8ca539fdc2c7d50283997683141
Author: Mattias Engdegård <[email-masked]>
Date:   Sat Mar 25 15:38:00 2023 +0100

    Generalise a LAP optimisation rule

    * lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode):
    Accept (stack-set 1) as equivalent to (discardN-preserve-tos 1) in a
    rule previously overlooked.  This is usually beneficial in code size
    and almost always shortens dynamic paths.

Common setup:

1. mkdir repro
2. Put attached init.el and main.c inside (technically, main.c need not be in repro)

———

To reproduce bug#61917:

1. git checkout master
2. configure --with-native-compilation \
  --without-x \
  --without-ns \
  --without-compress-install \
  --with-native-compilation \
  --with-json \
  --with-tree-sitter
3. make bootstrap
4. emacs  --init-directory ../repro
5. Check messages, and ye shall find the bug message.

——— 

To reproduce segfault:

1. git checkout 52b67740d10df8ca539fdc2c7d50283997683141
2. Perform same configure and build commands as above.
3. emacs --init-directory ../repro ../repro/main.c (loading main.c is *required*, the segfault does not fire otherwise)
4. (In emacs) M-x
5. Fatal error 11: Segmentation fault

Best regards,

Jacob Faibussowitsch
(Jacob Fai - booss - oh - vitch)