On Oct 30, 2013, at 8:32 AM, k-ohara5...@oco.net wrote: > I do not understand the Todo: comment; nothing should have been suicided > at this stage. What is the life cycle of a Clef and the copies made for > line-breaking possibilities?
The original clef is suicided in the handle_prebroken_dependencies function, which is the same place that the new begin and end of line grobs are created (see break-substitution.cc). > Is the never-printed original Clef /ever/ > is_live(), or just its broken copies? > It is live before handle_prebroken_copies. In this function, the broken copies are created, and then it is suicided. Conceptually, I don’t like the idea that a suicided grob contains useful information. You’ll see in the suicide function that its entire cache is cleared out (Grob::suicide) save one or two things (Item::suicide). I think everything should be cleared out. Otherwise, the code is less maintainable - developers will have to remember what type of information suicided grobs hold and what type they don’t. That’s why I created https://code.google.com/p/lilypond/issues/detail?id=3636. Cheers, MS _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel