[prev in list] [next in list] [prev in thread] [next in thread]
List: lilypond-user
Subject: Re: Error message
From: Craig Dabelstein <craig.dabelstein () gmail ! com>
Date: 2019-06-25 18:48:39
Message-ID: CAMhPZ6BGkRn9v__adaa93n=Tpa6arSyQ49c6coU_h3e7dJ6X3Q () mail ! gmail ! com
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
Hi Aaron,
The inclusion of *\override Stem.neutral-direction = #'() *comes straight
from the LSR here:
http://lilypond.org/doc/v2.18/Documentation/snippets/pitches#pitches-automatically-changing-the-stem-direction-of-the-middle-note-based-on-the-melody
Here is another MWE to reproduce the problem:
%%%%
\version "2.19.82"
\language english
\layout {
\context {
\Staff
\consists "Melody_engraver"
\override Stem.neutral-direction = #'()
}
}
\relative c'' {
\time 3/2
\tuplet 3/2 2 {
r4 df \f af gf' cf, ef gf, e' a,
} |
\tuplet 3/2 2 { r4 g' bf, f' e, r df' c, r } |
}
%%%%
And the error message:
Starting lilypond 2.19.82 [mwe.ly]...
Processing `/Users/craigdabelstein/Desktop/mwe.ly'
Parsing...
Interpreting music...
Preprocessing graphical objects...
Finding the ideal number of pages...
Fitting music on 1 page...
Drawing
systems.../home/gub/NewGub/gub/target/darwin-x86/src/lilypond-git.sv.gnu.org--lilypond.git-stable-2.20/flower/include/drul-array.hh:35
<0>: failed assertion `d == 1 || d == -1'
Exited with exit status 1.
Craig
On Tue, 25 Jun 2019 at 22:56, Aaron Hill <lilypond@hillvisions.com> wrote:
> On 2019-06-25 4:46 am, David Kastrup wrote:
> > Craig Dabelstein <craig.dabelstein@gmail.com> writes:
> >
> > > And the guilty line is ...
> > >
> > > \consists "Melody_engraver"
> > > %\override Stem.neutral-direction = #'()
> > >
> > > Commenting out the \override Stem.neutral-direction line fixed the
> > > problem.
> >
> > More likely than not half of a red herring: garbage protection problems
> > are quite elusive to track down. This propably changes the actions the
> > Melody_engraver takes.
>
> Unless I am completely lost myself, this is not the trampoline problem
> from before, though I suspect the appearance of "Melody_engraver" has
> confused things.
>
> Here is the proper repro MWE:
>
> %%%%
> \version "2.19.82"
> {
> \override Stem.neutral-direction = #'()
> \tuplet 3/2 { r4 b' c'' }
> }
> %%%%
>
> This is bad input because neutral-direction must be strictly UP or DOWN
> (or rather it can be a procedure that ultimately evaluates to 1 or -1).
> From what I can see, the point of the property is to determine what
> happens to a note on the middle line of a staff when there is nothing
> else (like a beam) that can help sway the decision one way or the other.
> Setting it to #'() would seem to be meaningless.
>
> Consider the output from the above MWE:
>
> ====
> GNU LilyPond 2.19.82
> Processing `drul-array-bad-direction.ly'
> Parsing...
> Interpreting music...
> Preprocessing graphical objects...
> programming error: Stem dir must be up or down.
> continuing, cross fingers
> Finding the ideal number of pages...
> Fitting music on 1 page...
> Drawing systems...lilypond:
> /home/gub/NewGub/gub/target/linux-64/src/lilypond-git.sv.gnu.org--lilypond.git-stable-2.20/flower/include/drul-array.hh:35:
>
> T& Drul_array<T>::at(Direction) [with T = double]: Assertion `d == 1 ||
> d == -1' failed.
> The terminal process terminated with exit code: 134
> ====
>
> LilyPond is already emitting a programming error: "Stem dir must be up
> or down". Whenever I see "cross fingers", I never make any assumption
> of what will work or not. So a failing assertion afterwards is not
> surprising.
>
> Craig: Would you confirm whether your project output contains the
> programming error line? I would say there is a bug if you are *only*
> seeing the failing assertion.
>
> Perhaps an additional check could be added to stem.cc:649 to ensure that
> neutral-direction has a sane value, which could catch this particular
> error earlier in the process.
>
>
> -- Aaron Hill
>
> _______________________________________________
> lilypond-user mailing list
> lilypond-user@gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user
>
--
[image: photograph]
*Craig Dabelstein*
Owner
email: craig@maximesmusic.com.au
Maxime's Music, QLD, Australia
[image: facebook icon] <https://www.facebook.com/maximesmusic.com.au> [image:
twitter icon] <https://twitter.com/MaximesMusic> [image: youtube icon]
<http://www.youtube.com/c/Maximesmusic_for_band> [image: instagram icon]
<https://www.instagram.com/maximes_music/> maximesmusic.com.au
[Attachment #5 (text/html)]
<div dir="ltr"><div dir="ltr">Hi Aaron,<div><br></div><div>The inclusion of \
<b>\override Stem.neutral-direction = #'() </b>comes straight from the LSR \
here:<br><div><br></div><div><a \
href="http://lilypond.org/doc/v2.18/Documentation/snippets/pitches#pitches-automatical \
ly-changing-the-stem-direction-of-the-middle-note-based-on-the-melody">http://lilypond \
.org/doc/v2.18/Documentation/snippets/pitches#pitches-automatically-changing-the-stem- \
direction-of-the-middle-note-based-on-the-melody</a><br></div><div><br></div><div>Here \
is another MWE to reproduce the \
problem:</div><div><br></div><div>%%%%</div><div>\version \
"2.19.82"<br>\language english<br><br>\layout {<br> \context {<br> \
\Staff<br> \consists "Melody_engraver"<br> \override \
Stem.neutral-direction = #'()<br> }<br>}<br><br>\relative c'' {<br> \
\time 3/2<br> \tuplet 3/2 2 {<br> r4 df \f af gf' cf, ef gf, e' a,<br> \
} |<br> <br> \tuplet 3/2 2 { r4 g' bf, f' e, r df' c, r } \
|<br>}<br></div><div>%%%%</div></div><div><br></div><div>And the error \
message:</div><div><p style="margin:0px;white-space:pre-wrap"><span \
style="font-weight:600">Starting lilypond 2.19.82 [<a \
href="http://mwe.ly">mwe.ly</a>]...</span></p> <p \
style="margin:0px;white-space:pre-wrap"><span \
style="font-family:monospace;font-size:9pt">Processing \
`/Users/craigdabelstein/Desktop/<a href="http://mwe.ly">mwe.ly</a>'</span></p> <p \
style="margin:0px;white-space:pre-wrap"><span \
style="font-family:monospace;font-size:9pt">Parsing...</span></p> <p \
style="margin:0px;white-space:pre-wrap"><span \
style="font-family:monospace;font-size:9pt">Interpreting music...</span></p> <p \
style="margin:0px;white-space:pre-wrap"><span \
style="font-family:monospace;font-size:9pt">Preprocessing graphical \
objects...</span></p> <p style="margin:0px;white-space:pre-wrap"><span \
style="font-family:monospace;font-size:9pt">Finding the ideal number of \
pages...</span></p> <p style="margin:0px;white-space:pre-wrap"><span \
style="font-family:monospace;font-size:9pt">Fitting music on 1 page...</span></p> <p \
style="margin:0px;white-space:pre-wrap"><a href="0"><span \
style="font-family:monospace;font-size:9pt">Drawing \
systems.../home/gub/NewGub/gub/target/darwin-x86/src/lilypond-git.sv.gnu.org--lilypond.git-stable-2.20/flower/include/drul-array.hh:35</span></a><span \
style="font-family:monospace;font-size:9pt">: failed assertion `d == 1 || d == \
-1'</span></p> <p style="margin:0px;white-space:pre-wrap"><span \
style="font-weight:600;color:rgb(128,0,0)">Exited with exit status \
1.</span></p></div><div><br></div><div>Craig</div><div><br></div></div><br><div \
class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, 25 Jun 2019 at 22:56, \
Aaron Hill <<a href="mailto:lilypond@hillvisions.com">lilypond@hillvisions.com</a>> \
wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 2019-06-25 4:46 am, \
David Kastrup wrote:<br> > Craig Dabelstein <<a \
href="mailto:craig.dabelstein@gmail.com" \
target="_blank">craig.dabelstein@gmail.com</a>> writes:<br> > <br>
>> And the guilty line is ...<br>
>> <br>
>> \consists "Melody_engraver"<br>
>> %\override Stem.neutral-direction = #'()<br>
>> <br>
>> Commenting out the \override Stem.neutral-direction line fixed the <br>
>> problem.<br>
> <br>
> More likely than not half of a red herring: garbage protection problems<br>
> are quite elusive to track down. This propably changes the actions the<br>
> Melody_engraver takes.<br>
<br>
Unless I am completely lost myself, this is not the trampoline problem <br>
from before, though I suspect the appearance of "Melody_engraver" has <br>
confused things.<br>
<br>
Here is the proper repro MWE:<br>
<br>
%%%%<br>
\version "2.19.82"<br>
{<br>
\override Stem.neutral-direction = #'()<br>
\tuplet 3/2 { r4 b' c'' }<br>
}<br>
%%%%<br>
<br>
This is bad input because neutral-direction must be strictly UP or DOWN <br>
(or rather it can be a procedure that ultimately evaluates to 1 or -1). <br>
From what I can see, the point of the property is to determine what <br>
happens to a note on the middle line of a staff when there is nothing <br>
else (like a beam) that can help sway the decision one way or the other. <br>
Setting it to #'() would seem to be meaningless.<br>
<br>
Consider the output from the above MWE:<br>
<br>
====<br>
GNU LilyPond 2.19.82<br>
Processing `<a href="http://drul-array-bad-direction.ly" rel="noreferrer" \
target="_blank">drul-array-bad-direction.ly</a>'<br> Parsing...<br>
Interpreting music...<br>
Preprocessing graphical objects...<br>
programming error: Stem dir must be up or down.<br>
continuing, cross fingers<br>
Finding the ideal number of pages...<br>
Fitting music on 1 page...<br>
Drawing systems...lilypond: <br>
/home/gub/NewGub/gub/target/linux-64/src/<a href="http://lilypond-git.sv" \
target="_blank">lilypond-git.sv</a>.gnu.org--lilypond.git-stable-2.20/flower/include/drul-array.hh:35: \
<br> T& Drul_array<T>::at(Direction) [with T = double]: Assertion `d == 1 \
|| <br> d == -1' failed.<br>
The terminal process terminated with exit code: 134<br>
====<br>
<br>
LilyPond is already emitting a programming error: "Stem dir must be up <br>
or down". Whenever I see "cross fingers", I never make any \
assumption <br> of what will work or not. So a failing assertion afterwards is not \
<br> surprising.<br>
<br>
Craig: Would you confirm whether your project output contains the <br>
programming error line? I would say there is a bug if you are *only* <br>
seeing the failing assertion.<br>
<br>
Perhaps an additional check could be added to stem.cc:649 to ensure that <br>
neutral-direction has a sane value, which could catch this particular <br>
error earlier in the process.<br>
<br>
<br>
-- Aaron Hill<br>
<br>
_______________________________________________<br>
lilypond-user mailing list<br>
<a href="mailto:lilypond-user@gnu.org" target="_blank">lilypond-user@gnu.org</a><br>
<a href="https://lists.gnu.org/mailman/listinfo/lilypond-user" rel="noreferrer" \
target="_blank">https://lists.gnu.org/mailman/listinfo/lilypond-user</a><br> \
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" \
class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div \
dir="ltr"><span src="https://www.mail-signatures.com/signature-generator/selectedTemplatePath">
<table style="font-family:Verdana,sans-serif" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td style="width:140px;padding:0px;text-align:center;vertical-align:middle" \
width="140" valign="middle"> <img alt="photograph" style="width: 100px; height: \
100px; border-radius: 50px; border: 0px;" \
src="https://drive.google.com/uc?export=view&id=1ae9_McaWGSjbKWeL0BnXx4Od255dtPEt" \
width="100" height="100" border="0"> </td>
<td style="border-bottom:2px solid rgb(237,90,36);padding:0px;vertical-align:top" \
valign="top"> <table style="font-family:Verdana,sans-serif" cellspacing="0" \
cellpadding="0"> <tbody>
<tr>
<td style="font-family:Verdana,sans-serif;color:rgb(237,90,36);padding:0px 0px \
6px;vertical-align:top" valign="top">
<strong><span style="font-size:14pt;font-style:italic">Craig \
Dabelstein</span></strong><br> <span style="font-size:10pt">Owner</span>
</td>
</tr>
<tr>
<td style="font-family:Verdana,sans-serif;color:rgb(68,68,68);padding:0px 0px \
6px;line-height:18px;vertical-align:top" valign="top">
<span style="font-size:10pt">email: <a \
href="mailto:craig@maximesmusic.com.au" \
target="_blank">craig@maximesmusic.com.au</a><br> </span>
</td>
</tr>
<tr>
<td style="font-family:Verdana,sans-serif;color:rgb(68,68,68);padding:0px 0px \
6px;line-height:18px;vertical-align:top" valign="top"> <span \
style="font-size:10pt">Maxime's Music, </span> <span \
style="font-size:10pt">QLD, Australia</span>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td style="font-family:Verdana,sans-serif;width:140px;padding-top:6px;padding-left:0px;padding-right:0px;text-align:center;vertical-align:middle" \
width="140" valign="middle"> <span><a \
href="https://www.facebook.com/maximesmusic.com.au" rel="noopener" \
target="_blank"><img alt="facebook icon" style="border: 0px; height: 16px; width: \
16px;" src="https://codetwocdn.azureedge.net/images/mail-signatures/generator/photo2/fb.png" \
width="16" border="0"></a> </span><span><a href="https://twitter.com/MaximesMusic" \
rel="noopener" target="_blank"><img alt="twitter icon" style="border: 0px; height: \
16px; width: 16px;" src="https://codetwocdn.azureedge.net/images/mail-signatures/generator/photo2/tt.png" \
width="16" border="0"></a> </span><span><a \
href="http://www.youtube.com/c/Maximesmusic_for_band" rel="noopener" \
target="_blank"><img alt="youtube icon" style="border: 0px; height: 16px; width: \
16px;" src="https://codetwocdn.azureedge.net/images/mail-signatures/generator/photo2/yt.png" \
width="16" border="0"></a> </span><span><a \
href="https://www.instagram.com/maximes_music/" rel="noopener" target="_blank"><img \
alt="instagram icon" style="border: 0px; height: 16px; width: 16px;" \
src="https://codetwocdn.azureedge.net/images/mail-signatures/generator/photo2/it.png" \
width="16" border="0"></a> </span> </td>
<td style="padding:6px 0px 0px;vertical-align:middle" valign="middle">
<a href="http://maximesmusic.com.au" rel="noopener" target="_blank"><span \
style="color:rgb(237,90,36);font-family:Verdana,sans-serif;font-size:10pt"><span \
style="font-size:10pt">maximesmusic.com.au</span></span></a> </td>
</tr>
</tbody>
</table></span></div></div></div></div></div></div></div>
[Attachment #6 (text/plain)]
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic