lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Moving Mark_engraver causes programming error


From: Jean Abou Samra
Subject: Re: Moving Mark_engraver causes programming error
Date: Sun, 18 Jul 2021 17:24:06 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0



Le 18/07/2021 à 11:12, Thomas Morley a écrit :
Hi all,

consider the follwing code, moving Mark_engraver:

\score {
   <<
       \new Staff b1
       \new Dynamics
         \with { \consists "Mark_engraver" }
         { s2 \mark \default s2 }
   >>
   \layout {
     \context {
       \Score
       \remove "Mark_engraver"
     }
   }
}

with 2.22.0 it works, with 2.23.3 I get:
programming error: cyclic dependency: calculation-in-progress
encountered for #'adjacent-pure-heights (VerticalAxisGroup)
continuing, cross fingers

Similar for https://lsr.di.unimi.it/LSR/Item?id=1010

Is this a bug or on purpose?
If not a bug, how to avoid the programming error?

Thanks,
   Harm


15e9d3010cfcede094e5907b87d55737df839572 is the first bad commit
commit 15e9d3010cfcede094e5907b87d55737df839572
Author: Jean Abou Samra <jean@abou-samra.fr>
Date:   Wed May 26 16:56:06 2021 +0200

    Unconditionally warn about cyclic dependencies

    Check for cyclic dependencies and warn about them even in non-debug
    builds.  This is useful even for users: if LilyPond has a bug that lies
    in a cyclic dependency, it is better to be informed about it so you
    have a change to report it to the mailing lists rather than have
    LilyPond behave surprisingly without any indication why.

    It is also useful for those who extend LilyPond in Scheme, who
    (from experience) can hit cyclic dependencies relatively easily.

    Finally, it is useful for developers, because we might get more
    bug reports.

    This is also consistent with the code for pure heights, which
    always warns about dependency cycles.

    As a result, the check in get_grob_direction can be removed
    since get_property now does the job.

 input/regression/debug-property-callbacks.ly | 22 ++++++++++++++++++++++
 lily/directional-element-interface.cc        |  7 -------
 lily/grob-property.cc                        |  8 --------
 3 files changed, 22 insertions(+), 15 deletions(-)
 create mode 100644 input/regression/debug-property-callbacks.ly

So it's a bug uncovered in development versions but
already present in 2.22. I'm rather glad that this
commit had the intended effect! I just opened
https://gitlab.com/lilypond/lilypond/-/issues/6156.

Given that so far this input seemed to work without
surprising effects in the printed score, I suppose
you could simply ignore the warning.

Cheers,
Jean




reply via email to

[Prev in Thread] Current Thread [Next in Thread]