On 11-04-29 12:51 PM, Olexa Bilaniuk wrote:
I'm not top posting.
While typesetting a large project, I accidentally included in my "utilities"
file a file that included those same utilities, which resulted in Lilypond
quickly eating up all my memory. Distilled to the bare minimum, this is what
triggers this bug:
******************************
% In file Test.ly:
% WARNING: DO NOT COMPILE
\version "2.13.60"
\include "Test2.ly"
% End file Test.ly
******************************
% In file Test2.ly:
% WARNING: DO NOT COMPILE
\version "2.13.60"
\include "Test.ly"
% End file Test2.ly
******************************
I admit that to a certain extent it is the user's responsibility to check for
these sorts of failings, but in the interest of safety there should be a check
for mutual/cyclical includes. For example, GCC refuses to process includes
deeper than I believe 127 levels (An example of setting a hard limit), and
another way to do this would be to build a dependency graph and test whether it
is acyclic or not.
Olexa Bilaniuk
I'm not certain that memory serves me well, Olexa, but the following
might be of some use:
http://article.gmane.org/gmane.comp.gnu.lilypond.general/54812/match=included+already
Hope that helps!
Colin
Bug Squad
--
The test of our progress is not whether we add more to the abundance
of those who have much, it is whether we provide enough for those who
have too little.
-Franklin D. Roosevelt, 32nd US President (1882-1945)
_______________________________________________
bug-lilypond mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-lilypond