[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Regression in parser
From: |
Erik Sandberg |
Subject: |
Re: Regression in parser |
Date: |
Wed, 27 Sep 2006 14:02:04 +0200 |
User-agent: |
KMail/1.9.1 |
On Tuesday 26 September 2006 23:54, Han-Wen Nienhuys wrote:
> Erik Sandberg schreef:
> > Hi,
> >
> > You should use ly:clone-parser to avoid this problem:
> >
> > #(define-music-function (parser location) ()
> > (ly:parser-parse-string (ly:clone-parser parser) "\\include
> > \"test-data.ly\"")
> > (make-music 'SequentialMusic 'void #t))
> >
> > The same problem exists in previous versions, it happens whenever the
> > lexer needs to read a lookahead token before applying a function:
>
> I'm not sure. Since the arity of the function is known beforehand, the
> parser doesn't need any lookahead before applying the function. How does
> this work in the new EXPECT_XXX setup?
In the case \unaryFun c { d }, we still need to read a lookahead token after
the c (could be a 8 or a '); I think this problem always existed.
The new thing now is that also 0-ary functions are subject to the same
problem: We need to read an extra token to see whether an EXPECT_XXX comes.
If you like, I can fix this particular case by adding a special token for
0-ary functions (but this will not fix the underlying problem).
--
Erik