From: David Kastrup Date: Tue, 6 Dec 2011 16:50:29 +0000 (+0100) Subject: Let #{ ... #} leave nicer runtime material X-Git-Tag: release/2.15.22-1~36^2~1 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=44ff71313e1ea79b7e241fd131b9a0130e6ced32;p=lilypond.git Let #{ ... #} leave nicer runtime material --- diff --git a/scm/parser-ly-from-scheme.scm b/scm/parser-ly-from-scheme.scm index 91fbe3675d..0e697d22bd 100644 --- a/scm/parser-ly-from-scheme.scm +++ b/scm/parser-ly-from-scheme.scm @@ -63,13 +63,13 @@ from @var{port} and return the corresponding Scheme music expression. (set! closures (cons `(cons ,p (lambda () ,expr)) closures))))))))))) - `(let* ((clone - (ly:parser-clone parser (list ,@closures))) - (result (ly:parse-string-expression clone ,lily-string - ,filename - ,line))) - (if (ly:parser-has-error? clone) - (ly:parser-error parser (_ "error in #{ ... #}"))) - result))) + (define (embedded-lilypond parser lily-string filename line closures) + (let* ((clone (ly:parser-clone parser closures)) + (result (ly:parse-string-expression clone lily-string + filename line))) + (if (ly:parser-has-error? clone) + (ly:parser-error parser (_ "error in #{ ... #}"))) + result)) + (list embedded-lilypond 'parser lily-string filename line (cons 'list (reverse! closures))))) (read-hash-extend #\{ read-lily-expression)