"Renato" <[email protected]> wrote in message news:[email protected]...
I'm not top posting.
I think this is quite important...
Explaining in theory is very complicated - an example should clarify.
This makes lilypond crash and make no output.

<<
\new Voice = "a" {
 \new Voice = "b" {c2( d2)}
 r4 r4 c2
}
\new Lyrics \lyricsto "b" {
 \set associatedVoice = "a" Aaa __
 Bbb
}


If you change "r4 r4" with "r2", lilypond works - it crashes only with two
rests in that point.
It works also if you remove the melismata or the extender on the "Aaa".
Obviously if you add some music before the "b" Voice the Lyrics can be
associated with "a" and then switch to "b", but lilypond crashes when
trying to print "Bbb" in the "a" Voice.

This seems to be fixed if you add another Voice context (and name it)
on the "r4 r4 c2" bar and switch to this Voice rather than the main.

I can confirm it crashes versions between 2.12.2 and 2.15.33 - I've not tried wider. It looks odd code to me - why are the voices nested like that? Why have lyricsto a and then _immediately_ switch to b? There's also the note in the NR about associatedVoice: "\set associatedVoice = "two" % must be set one syllable early" - it looks lie this attempts to change the associated voice at the first syllable, which - by definition - can't be one syllable early.

--
Phil Holmes
Bug Squad


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

Reply via email to