bug-lilypond
[Top][All Lists]
Advanced

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

Re: programming errors: "Object is not a markup." and "I am not spanned!


From: David Kastrup
Subject: Re: programming errors: "Object is not a markup." and "I am not spanned!"
Date: Mon, 04 Oct 2010 09:59:31 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

"Dmytro O. Redchuk" <address@hidden> writes:

> On Sun 03 Oct 2010, 03:12 David Kastrup wrote:
>> Wilbert Berendsen <address@hidden> writes:
>> 
>> > Op donderdag 30 september 2010 schreef Marnix:
>> >
>> >> L.S.,
>> >> 
>> >> For the following file
>> >> 
>> >>     \version "2.12.4"
>> >>     { R\breve\fermata }
>> >
>> > use R\breve-\fermataMarkup (see the docs about full measure rests).
>> >
>> >> Even more alarming-looking,
>> >> 
>> >>     \version "2.12.4"
>> >>     { R2 }
>> >> 
>> >> results in a (correct) "barcheck failed" warning, but also in an "I am not
>> >> spanned!" error:
>> >
>> > R2 does not fill the measure that's why the MultiMeasureRest complains.
>> > No LilyPond bugs as far as I can tell.
>> 
>> Incomprehensible error messages count as bugs.
>
> Please, can you tell what lilypond should output in this case?

We currently get
/tmp/junk2.ly:1:2: warning: barcheck failed at: 1/2
{ 
  R2 }
Preprocessing graphical objects...
programming error: Multi_measure_rest::get_rods (): I am not spanned!
continuing, cross fingers
programming error: Object is not a markup. 
continuing, cross fingers
This object should be a markup: ()
programming error: Multi_measure_rest::get_rods (): I am not spanned!
continuing, cross fingers


Instead, the message better be either
Warning: multimeasure rest fails bar check
(in case that its length _is_ a full bar multiple)
or
Error: multimeasure rest size not a multiple of bar size
(in case that it could not work out anyway).

In case of a warning, error recovery needs to result in something
reasonably sensible.  If that is not feasible, one needs to create an
error instead.

A warning implies that Lilypond is going to do continue with reasonable
results.

-- 
David Kastrup




reply via email to

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