[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#61504: 29.0.60; executing byte-code from previous build causes SIGSE
From: |
Eli Zaretskii |
Subject: |
bug#61504: 29.0.60; executing byte-code from previous build causes SIGSEGV crash |
Date: |
Tue, 14 Feb 2023 15:29:50 +0200 |
> Date: Tue, 14 Feb 2023 09:29:32 +0000
> From: Gregory Heytings <gregory@heytings.org>
> cc: Eli Zaretskii <eliz@gnu.org>, 61504@debbugs.gnu.org
>
> > There seems to be a byte-code change between versions
> > 0ec0a610ed226419269f519021cbe8fb2dde2ed5 (old) and
> > a4aa32bdfff7aaf54efbacbb04b7f2b52fef92a7 (new) which causes the new
> > version to crash with SIGSEGV when executing certain code from an .elc
> > built using the old version. Recompiling the file with the new version
> > causes the new .elc to work correctly.
> >
>
> The bytecode did not change, but the byte codes generated by the
> save-restriction form did change.
>
> Now that I think of it again, it is possible make that change while
> preserving backward compatibility.
>
> Eli, what do you think of the attached patch? It restores the 'unbind 1'
> at the end of save-restriction, and puts the two data elements into a cons
> instead of pushing them separately. (Of course this passes make and make
> check, with and without native compilation.)
I guess we have no choice.
Mattias, Stefan: any better alternatives, or comments/objections?
bug#61504: 29.0.60; executing byte-code from previous build causes SIGSEGV crash, Stefan Monnier, 2023/02/14