Control: tags -1 + pending

Hi Stuart and Adrian,

Thank you for your reports!

On Sat, Sep 5, 2020 at 10:03 AM Adrian Bunk <b...@debian.org> wrote:
>
> On Mon, Jul 27, 2020 at 09:09:45PM +1000, Stuart Prescott wrote:
> >...
> > guile segfaults as soon as it is started (with or without docs on stdin).
> > The backtrace is as follows in case the problem jumps out.
> >
> > /build/lilypond-jv5Dao/lilypond-2.20.0/guile18/libguile/.libs$ 
> > LD_LIBRARY_PATH=. gdb ./guile
> > Reading symbols from ./guile...
> > (gdb) r
> > Starting program: 
> > /build/lilypond-jv5Dao/lilypond-2.20.0/guile18/libguile/.libs/guile
> >
> > Program received signal SIGSEGV, Segmentation fault.
> > scm_mark_locations (x=0x7fffffffe948, n=18446744073709551562) at 
> > gc-mark.c:435
> > 435           SCM obj = * (SCM *) &x[m];
> >...
>
> lilypond started to FTBFS when libgc 8 entered unstable.

It's probably related to a change in gcc-10 too.
I was able to compile guile-1.8 with gcc-9 to avoid FTBFS.

It turns out the same bug got triggered with gcc-4 -O3 too,
for the C code used for stack growth direction detection.
According to Paul Eggert who fixed the bug in Autoconf,
they had to outsmart gcc's optimization.  ;-)

Here is the changelog entry for the pending fix at
https://salsa.debian.org/debian/lilypond/-/commit/f8b3bfe :

    Patch Guile-1.8 to the latest branch_release-1-8 branch
    found in Guile git repository on Savannah, see patches 1801 to 1825.
    In particular, 1812-Fix-stack-growth-direction-check.patch,
    originally written for Autoconf by Paul Eggert for Autoconf
    and pulled into Guile-2.0 in 2011, fixed a build error with
    -O3 back then, and fixes FTBFS with gcc-10 nowadays,
    due to a bug in find_stack_direction() code in configure.in.
    See http://lists.gnu.org/archive/html/bug-autoconf/2011-06/msg00035.html
    for the whole story.

Thanks to David Kastrup for pointing me in that direction, even though
I only subconsciously understood his email at the time:
 * https://lists.gnu.org/archive/html/lilypond-devel/2020-06/msg00045.html

Also to Jonas Hahnfeld for explaining the issue in a way that I could
understand:
 * https://lists.gnu.org/archive/html/lilypond-devel/2020-06/msg00047.html

My summary post on lilypond-devel:
 * https://lists.gnu.org/archive/html/lilypond-devel/2020-09/msg00041.html

Cheers,
Anthony

Reply via email to