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 <lilyp...@hillvisions.com> wrote: > On 2019-06-25 4:46 am, David Kastrup wrote: > > Craig Dabelstein <craig.dabelst...@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: cr...@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
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user