>> If we can further pinpoint the discussion, given the current way lilypond
>> handles parsing (or other) errors, what *is* the meaning of 'fatal error'?
> 
> An error leading to a fatal error message and a non-zero exit status
> because LilyPond does not see fit to deal with the input properly.

As previously shown, a sample file with the content:

{ bork }

Will lead to the following output:

$ lilypond playground/error.ly
GNU LilyPond 2.19.37
Processing `/tmp/lyp/wrappers/error.ly'
Parsing...
/Users/sharon/playground/error.ly:1:3: error: unrecognized string, not in text 
script or \lyricmode
{ 
  bork }
/tmp/lyp/wrappers/error.ly:1: warning: no \version statement found, please add

\version "2.19.37"

for future compatibility
Interpreting music...
Preprocessing graphical objects...
Finding the ideal number of pages...
Fitting music on 1 page...
Drawing systems...
Layout output to 
`/var/folders/tz/jxcv5s0j091dfpxl3qbvpnf40000gn/T//lilypond-A2LwIQ'...
Converting to `error.pdf'...
Deleting `/var/folders/tz/jxcv5s0j091dfpxl3qbvpnf40000gn/T//lilypond-A2LwIQ'...
fatal error: failed files: "/tmp/lyp/wrappers/error.ly"

Note that the "fatal error" message appears only at the end after lilypond has 
finished processing, and has created a PDF file, so what’s exactly “fatal” 
here? Also, if I understand correctly, lilypond first creates a temporary .ps 
file, then runs gs in order to convert it to a PDF file. If a *fatal* error has 
indeed been encountered while parsing the input file, why does lilypond 
continue with the normal processing sequence? What is the difference then 
between a fatal error and a non-fatal error?

I’m not saying that lilypond’s behaviour is necessarily wrong. I’m just trying 
to point out, like others have, that the term “fatal error” would normally mean 
that the program was unable to continue processing.

Sharon
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to