bug-lilypond
[Top][All Lists]
Advanced

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

Re: Issue 380 in lilypond: Try to auto-detect cyclic references in heade


From: lilypond
Subject: Re: Issue 380 in lilypond: Try to auto-detect cyclic references in header fields (was 'cycling markup reference segfaults')
Date: Thu, 15 Sep 2011 13:02:44 +0000

Updates:
        Labels: -Patch-needs_work Patch-new

Comment #19 on issue 380 by address@hidden: Try to auto-detect cyclic references in header fields (was 'cycling markup reference segfaults')
http://code.google.com/p/lilypond/issues/detail?id=380

I have now created a new patch, which employs the hare+tortoise algorithm to detect cycles in markups:
http://codereview.appspot.com/5027042/

Unfortunately, the error message usually is not really helpful:
Fehler: Cyclic markup detected: line-markup, arguments: TODO

First, I don't think there is any way to get the code position where a markup was defined (which would be the ideal output). Second, I don't know any easy way to print out the arguments to the markup function in human-readable form. Third, the algorithm only detects loops, but does not find the user-entered begin of the loop. In particular, the error message above came from the definition:

  composer = \markup {Cyclic reference to \fromproperty #'header:temp }
  temp = \markup {Cyclic reference to \fromproperty #'header:composer }

For that reason, I would like to apply both
http://codereview.appspot.com/5027042/
  and the updated
http://codereview.appspot.com/4951073/

The first is a general solution, while the second provides a specific solution for \fromproperty, which tells the user exactly where the loop occurs.




reply via email to

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