Crash: Unterminated tie with articulation in temporary voice

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Crash: Unterminated tie with articulation in temporary voice

Urs Liska
The attached file produces a crash on LilyPond 2.19.47 while it compiles
fine on 2.18.2. I don't have any earlier 2.19 versions ready to narrow
it down further.

It is a temporary polyphonic situation, and there's an unfinished tie

- in the second voice
- with an articulation attached to the same note
- as the last note in the temporary voice

(You may argue that this is nonsensical code, but originally I had it in
a \repeat unfold situation where it made sense.)

The crash can be prevented by

- removing the articulation
- completing the tie with a second note
- adding *any* other note

Interestingly there is no warning about the unterminated tie in the
first of these two solutions.

The behaviour is the same with fermatas and trills, but not with
dynamics, markup or fingerings (which compile fine).

Urs


_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond

unfinished-tie-crash.ly (472 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Crash: Unterminated tie with articulation in temporary voice

David Kastrup
Urs Liska <[hidden email]> writes:

> The attached file produces a crash on LilyPond 2.19.47 while it compiles
> fine on 2.18.2. I don't have any earlier 2.19 versions ready to narrow
> it down further.

What does "produces a crash" mean?  What is the output?  What is the
error message?  In case of an actual segfault, is there a traceback to
be had?  Is there a failed assertion or something?

I cannot reproduce any problem here so that is not just a stupid
question.

--
David Kastrup

_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Reply | Threaded
Open this post in threaded view
|

Re: Crash: Unterminated tie with articulation in temporary voice

Simon Albrecht-2
On 08.09.2016 21:53, David Kastrup wrote:

> Urs Liska <[hidden email]> writes:
>
>> The attached file produces a crash on LilyPond 2.19.47 while it compiles
>> fine on 2.18.2. I don't have any earlier 2.19 versions ready to narrow
>> it down further.
> What does "produces a crash" mean?  What is the output?  What is the
> error message?  In case of an actual segfault, is there a traceback to
> be had?  Is there a failed assertion or something?
>
> I cannot reproduce any problem here so that is not just a stupid
> question.

At least I can confirm that the crash happens (Ubuntu 14.04, 64-bit
here). In 2.19.45, it doesn’t.
How does one do a backtrace? I tried running
gdb ~/lilypond/2.19.47/bin/lilypond
but it said
"/home/simon/lilypond/2.19.47/bin/lilypond": not in executable format:
File format not recognised

Best, Simon

_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Reply | Threaded
Open this post in threaded view
|

Re: Crash: Unterminated tie with articulation in temporary voice

Urs Liska
In reply to this post by David Kastrup

Am 08.09.2016 um 21:53 schrieb David Kastrup:
> Urs Liska <[hidden email]> writes:
>
>> The attached file produces a crash on LilyPond 2.19.47 while it compiles
>> fine on 2.18.2. I don't have any earlier 2.19 versions ready to narrow
>> it down further.
> What does "produces a crash" mean?  What is the output?  What is the
> error message?  

Starting lilypond 2.19.47 [Untitled]...

Processing `/tmp/frescobaldi-XpclBd/tmpk3Rt0n/document.ly'

Parsing...

Interpreting music...

Preprocessing graphical objects...

Exited with exit status 1.


Compiling through the command line gives the (German)

GNU LilyPond 2.19.47
»unfinished-tie-crash.ly« wird verarbeitet
Analysieren...
Interpretation der Musik...
Vorverarbeitung der grafischen Elemente...Speicherzugriffsfehler



> In case of an actual segfault, is there a traceback to
> be had?  Is there a failed assertion or something?

I have to second Simons question about producing a backtrace.

Output with the --verbose option ends with

Interpretation der Musik...
[/home/uliska/lilypond/usr/share/lilypond/current/fonts/otf/emmentaler-20.otf
Replace font name from Emmentaler-20 to Emmentaler-20.]
verstrichene Zeit: 0.01 Sekunden
Elementanzahl: 63 (Klammern: 7)
Vorverarbeitung der grafischen Elemente...
Anzahl der grafischen Objekte (grob): 129
[/home/uliska/lilypond/usr/share/lilypond/current/fonts/otf/emmentaler-11.otf
Replace font name from Emmentaler-11 to Emmentaler-11.]
[/home/uliska/lilypond/usr/share/lilypond/current/fonts/otf/emmentaler-13.otf
Replace font name from Emmentaler-13 to Emmentaler-13.]
[/home/uliska/lilypond/usr/share/lilypond/current/fonts/otf/emmentaler-14.otf
Replace font name from Emmentaler-14 to Emmentaler-14.]
[/home/uliska/lilypond/usr/share/lilypond/current/fonts/otf/emmentaler-16.otf
Replace font name from Emmentaler-16 to Emmentaler-16.]
[/home/uliska/lilypond/usr/share/lilypond/current/fonts/otf/emmentaler-18.otf
Replace font name from Emmentaler-18 to Emmentaler-18.]
[/home/uliska/lilypond/usr/share/lilypond/current/fonts/otf/emmentaler-23.otf
Replace font name from Emmentaler-23 to
Emmentaler-23.]Speicherzugriffsfehler


BTW my system is

$ uname -a
Linux lmde-laptop 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2
(2016-04-08) x86_64 GNU/Linux

>
> I cannot reproduce any problem here so that is not just a stupid
> question.
>

_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Reply | Threaded
Open this post in threaded view
|

Re: Crash: Unterminated tie with articulation in temporary voice

Thomas Morley-2
In reply to this post by Simon Albrecht-2
2016-09-09 0:13 GMT+02:00 Simon Albrecht <[hidden email]>:

> How does one do a backtrace? I tried running
> gdb ~/lilypond/2.19.47/bin/lilypond
> but it said
> "/home/simon/lilypond/2.19.47/bin/lilypond": not in executable format: File
> format not recognised

You need to point gdb to the executable, not the script which execute it.
For example the absolute path to my lilypond 2.18.2-executable is:
lilypond/usr/bin/lilypond
It's obviously in my home directory.
So:
gdb lilypond/usr/bin/lilypond

Then invoke by doing
run path-to-the-file-you-want-be-executed

Then do
bt

The sequence for me was:

gdb lilypond/usr/bin/lilypond
run lilypondH/Test/forum/unfinished-tie-crash.ly
bt


You should see something like:

gdb lilypond/usr/bin/lilypond
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.04) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from lilypond/usr/bin/lilypond...(no debugging symbols
found)...done.
(gdb) run lilypondH/Test/forum/unfinished-tie-crash.ly
Starting program: /home/hermann/lilypond/usr/bin/lilypond
lilypondH/Test/forum/unfinished-tie-crash.ly
GNU LilyPond 2.18.2
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Processing `lilypondH/Test/forum/unfinished-tie-crash.ly'
Parsing...
Interpreting music...
Preprocessing graphical objects...
Finding the ideal number of pages...
Fitting music on 1 page...
Drawing systems...
Layout output to `unfinished-tie-crash.ps'...
Converting to `./unfinished-tie-crash.pdf'...
Success: compilation successfully completed
[Inferior 1 (process 16217) exited normally]
(gdb) bt
No stack.

The last command does not give any result, ofcourse. No crash with 2.18.2

HTH,
  Harm

_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Reply | Threaded
Open this post in threaded view
|

Re: Crash: Unterminated tie with articulation in temporary voice

Thomas Morley-2
In reply to this post by Simon Albrecht-2
2016-09-09 0:13 GMT+02:00 Simon Albrecht <[hidden email]>:

> On 08.09.2016 21:53, David Kastrup wrote:
>>
>> Urs Liska <[hidden email]> writes:
>>
>>> The attached file produces a crash on LilyPond 2.19.47 while it compiles
>>> fine on 2.18.2. I don't have any earlier 2.19 versions ready to narrow
>>> it down further.
>>
>> What does "produces a crash" mean?  What is the output?  What is the
>> error message?  In case of an actual segfault, is there a traceback to
>> be had?  Is there a failed assertion or something?
>>
>> I cannot reproduce any problem here so that is not just a stupid
>> question.
>
>
> At least I can confirm that the crash happens (Ubuntu 14.04, 64-bit here).
> In 2.19.45, it doesn’t.


_Cannot_ confirm crash with a build from most recent master, i.e from:
commit 5944d20489bb5b8e4c4907fa3b3bcae9ec275ccb

with:
gcc --version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609

Cheers,
  Harm

_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Reply | Threaded
Open this post in threaded view
|

Re: Crash: Unterminated tie with articulation in temporary voice

David Kastrup
In reply to this post by Simon Albrecht-2
Simon Albrecht <[hidden email]> writes:

> On 08.09.2016 21:53, David Kastrup wrote:
>> Urs Liska <[hidden email]> writes:
>>
>>> The attached file produces a crash on LilyPond 2.19.47 while it compiles
>>> fine on 2.18.2. I don't have any earlier 2.19 versions ready to narrow
>>> it down further.
>> What does "produces a crash" mean?  What is the output?  What is the
>> error message?  In case of an actual segfault, is there a traceback to
>> be had?  Is there a failed assertion or something?
>>
>> I cannot reproduce any problem here so that is not just a stupid
>> question.
>
> At least I can confirm that the crash happens (Ubuntu 14.04, 64-bit
> here). In 2.19.45, it doesn’t.
> How does one do a backtrace? I tried running
> gdb ~/lilypond/2.19.47/bin/lilypond
> but it said
> "/home/simon/lilypond/2.19.47/bin/lilypond": not in executable format:
> File format not recognised

Try gdb64 instead?

--
David Kastrup

_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Reply | Threaded
Open this post in threaded view
|

Re: Crash: Unterminated tie with articulation in temporary voice

Mark Knoop-4
In reply to this post by Thomas Morley-2
At 01:57 on 09 Sep 2016, Thomas Morley wrote:
>2016-09-09 0:13 GMT+02:00 Simon Albrecht <[hidden email]>:
>_Cannot_ confirm crash with a build from most recent master, i.e from:
>commit 5944d20489bb5b8e4c4907fa3b3bcae9ec275ccb
>
>with:
>gcc --version
>gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609

I reduced Urs' example to this:

{ fis'1 ~ -> }

which does result in a Segmentation fault (core dumped) on 2.19.47 but
compiles fine on current git. I presume David's commit 93f3d6 is what
fixed this.

{
  % 2.19.47
  fis'1 ~ ->             % seg fault
  %fis'1 ~                % compiles
  %fis'1 ~ -> fis'1 ~     % compiles
  %fis'1 ~ -> fis'1 ~ g'  % compiles
  %fis'1 ->               % compiles

  % 2.19.48 current git
  %fis'1 ~ ->             % compiles
  %fis'1 ~                % compiles
  %fis'1 ->               % compiles
  %fis'1 ~ -> fis'1 ~     % compiles
  %fis'1 ~ -> fis'1 ~ g'  % compiles
}

--
Mark Knoop

_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Reply | Threaded
Open this post in threaded view
|

Re: Crash: Unterminated tie with articulation in temporary voice

Urs Liska


Am 09.09.2016 um 09:24 schrieb Mark Knoop:

> At 01:57 on 09 Sep 2016, Thomas Morley wrote:
>> 2016-09-09 0:13 GMT+02:00 Simon Albrecht <[hidden email]>:
>> _Cannot_ confirm crash with a build from most recent master, i.e from:
>> commit 5944d20489bb5b8e4c4907fa3b3bcae9ec275ccb
>>
>> with:
>> gcc --version
>> gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609
> I reduced Urs' example to this:
>
> { fis'1 ~ -> }
>
> which does result in a Segmentation fault (core dumped) on 2.19.47 but
> compiles fine on current git. I presume David's commit 93f3d6 is what
> fixed this.
>
> {
>   % 2.19.47
>   fis'1 ~ ->             % seg fault
>   %fis'1 ~                % compiles
>   %fis'1 ~ -> fis'1 ~     % compiles
>   %fis'1 ~ -> fis'1 ~ g'  % compiles
>   %fis'1 ->               % compiles
>
>   % 2.19.48 current git
>   %fis'1 ~ ->             % compiles
>   %fis'1 ~                % compiles
>   %fis'1 ->               % compiles
>   %fis'1 ~ -> fis'1 ~     % compiles
>   %fis'1 ~ -> fis'1 ~ g'  % compiles
> }
>

Indeed, I can verify this. Thanks for trying.
I didn't think about recompiling LilyPond because the file I derived
this MWE from had actually crashed for a long time ago, so I wouldn't
have thought that the issue had *just* been fixed in between the latest
release and current master ...

So obviously this isn't a bug anymore.

Urs

_______________________________________________
bug-lilypond mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/bug-lilypond