Hi Patrick,

On 21/10/10 01:12, pnor...@gmail.com wrote:
> Hi Ian,
>
> I just tested your patch.
>
> In addition to the small tweak that is needed (see my comment below), it
> seems that the `(use-modules (ice-9 curried-definitions))' statement
> does not carry over to display-lily.scm.  I am a bit puzzled by this.
>
> This is the error message, in context:
>
> ;;; compiling
> /home/pnorcks/usr/share/lilypond/2.13.37/scm/music-functions.scm
> ;;; compiling
> /home/pnorcks/usr/share/lilypond/2.13.37/scm/display-lily.scm
> ;;; WARNING: compilation of
> /home/pnorcks/usr/share/lilypond/2.13.37/scm/display-lily.scm failed:
> ;;; key syntax-error, throw args (macroexpand "~a in ~a" ("source
> expression failed to match any pattern" (define
> ((make-music-type-predicate-aux mtypes) expr) (if (null? mtypes) #f (or
> (eqv? (car mtypes) (ly:music-property expr (quote name)))
> ((make-music-type-predicate-aux (cdr mtypes)) expr))))) #f)
> ;;; WARNING: compilation of
> /home/pnorcks/usr/share/lilypond/2.13.37/scm/music-functions.scm failed:
> ;;; key wrong-type-arg, throw args (#f "Wrong type to apply: ~S" (#f)
> (#f))
>
>
> Fortunately, it seems that the Scheme interpreter in Guile 1.9 is used
> as a fallback when compilation fails, since this doesn't interpret the
> make process.
>
> Can you reproduce this with Guile 1.9.13?
>

Rats!  I had a patched version of display-lily.scm with this as the star
of the module on my VM with guile 1.9 installed:

(define-module (scm display-lily)
  #:use-module (ice-9 optargs)
  #:use-module (ice-9 format)
  #:use-module (ice-9 regex)
  #:use-module (ice-9 pretty-print)
  #:use-module (srfi srfi-1)
  #:use-module (srfi srfi-13)
  #:use-module (srfi srfi-39)
  #:use-module (lily)
  #:use-syntax (srfi srfi-39)
  #:use-syntax (ice-9 optargs))

;;; (ice-9 curried-definitions) does not exist in Guile V1.8,7
;;;   TODO change this to
;;;   #:use-module (ice-9 curried-definitions)
;;;   once Guile V1.8 support is dropped so it's consistent

(if (string>? (version) "1.9.10")
    (use-modules (ice-9 curried-definitions)))

I'd obviously got to this bit and forgot to copy it back to my main
machine's environment and retest before my recent dose of flu. 

> Thanks,
> Patrick
>
>
> http://codereview.appspot.com/2219044/diff/15001/scm/lily.scm
> File scm/lily.scm (right):
>
> http://codereview.appspot.com/2219044/diff/15001/scm/lily.scm#newcode227
> scm/lily.scm:227: (use-modules (ice-9 curried-definitions))))
> In this section, the parenthesis nesting needs some adjustment.
>
> It should be
>
>   ((guile-v2)
>    (if (ly:get-option 'verbose)
>        (ly:message  (_ "Using (ice-9 curried-definitions) module\n")))
>    (use-modules (ice-9 curried-definitions)))
>
> http://codereview.appspot.com/2219044/
Nice catch, ta.

Cheers,

Ian


_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to