[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 = #&#39;() </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 \
&quot;2.19.82&quot;<br>\language english<br><br>\layout {<br>   \context {<br>      \
\Staff<br>      \consists &quot;Melody_engraver&quot;<br>      \override \
Stem.neutral-direction = #&#39;()<br>   }<br>}<br><br>\relative c&#39;&#39; {<br>   \
\time 3/2<br>   \tuplet 3/2 2 {<br>      r4 df \f af gf&#39; cf, ef gf, e&#39; a,<br> \
} |<br>   <br>   \tuplet 3/2 2 { r4 g&#39; bf, f&#39; e, r df&#39; 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>&#39;</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&#39;</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 &lt;<a href="mailto:lilypond@hillvisions.com">lilypond@hillvisions.com</a>&gt; \
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> &gt; Craig Dabelstein &lt;<a \
href="mailto:craig.dabelstein@gmail.com" \
target="_blank">craig.dabelstein@gmail.com</a>&gt; writes:<br> &gt; <br>
&gt;&gt; And the guilty line is ...<br>
&gt;&gt; <br>
&gt;&gt; \consists &quot;Melody_engraver&quot;<br>
&gt;&gt; %\override Stem.neutral-direction = #&#39;()<br>
&gt;&gt; <br>
&gt;&gt; Commenting out the \override Stem.neutral-direction line fixed the <br>
&gt;&gt; problem.<br>
&gt; <br>
&gt; More likely than not half of a red herring: garbage protection problems<br>
&gt; are quite elusive to track down.   This propably changes the actions the<br>
&gt; 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 &quot;Melody_engraver&quot; has <br>
confused things.<br>
<br>
Here is the proper repro MWE:<br>
<br>
%%%%<br>
\version &quot;2.19.82&quot;<br>
{<br>
     \override Stem.neutral-direction = #&#39;()<br>
     \tuplet 3/2 { r4 b&#39; c&#39;&#39; }<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 #&#39;() 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>&#39;<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&amp; Drul_array&lt;T&gt;::at(Direction) [with T = double]: Assertion `d == 1 \
|| <br> d == -1&#39; failed.<br>
The terminal process terminated with exit code: 134<br>
====<br>
<br>
LilyPond is already emitting a programming error: &quot;Stem dir must be up <br>
or down&quot;.   Whenever I see &quot;cross fingers&quot;, 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&amp;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&#39;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