Latest ecb and cedet!?

Eric M. Ludlam eric at siege-engine.com
Fri Sep 17 12:44:53 EDT 2010


On 09/17/2010 11:37 AM, Michael Sperber wrote:
>
> "Eric M. Ludlam"<eric at siege-engine.com>  writes:
>
>> On 09/16/2010 01:01 AM, Stephen J. Turnbull wrote:
>>> Eric M. Ludlam writes:
>>>    >   On 09/15/2010 08:21 PM, Stephen J. Turnbull wrote:
>>>    >   >   Eric M. Ludlam writes:
>>>    >   >
>>>    >   >     >    >    /home/matsl/work/cedet/cedet_xemacs/semantic/semantic-grammar.el...
>>>    >   >     >    >>>    Error occurred processing semantic-grammar.el: Bad
>>>    >   >     >    >>>    input grammar
>>>
>>> BTW, would it be hard to add file/line information to that error
>>> message, or perhaps quote the line where the error was recognized?
>>
>> I provided bad info in my last mail.  The grammar file has actually
>> fully parsed at this point, but it has written nil into the Emacs Lisp
>> source file.  When the data structure created by the parser is
>> "compiled" it sees the nil and throws this error, so there are no line
>> numbers at this point.  Basically, the whole file is wrong somewhere.
>>
>> Thus the error is when the .wy transforms to a .el, some initialization
>> fails, and the file parses out as empty.
>
> Yes.  It doesn't even see the terminals in wisent-java-tags.wy.  Could
> you give me a hint where they're actually retrieved?  (I keep getting
> lost in twisty mazes of indirection.)  My current thinking is that the
> work should happen in `semantic-fetch-tags', but the call to
> `semantic-active-p' there returns nil, so it never does anything.

The wisent parser was implemented by someone else, but as far as I know, 
`semantic-fetch-tags' is called at the bottom, and it returns parsed 
tags from the .wy file.  Since the grammar for wisent is compiled by 
wisent, there is an obvious funny dependency, so the compiled version of 
the grammar is always checked in.

The grammar file (.wy) needs to be put into semantic-grammar-mode.  That 
mode installs parser info into buffer local variables.  Those variables 
need to be set for semantic-active-p returns true.

So it could be that the auto-mode-alist is not setup correctly to 
install that major-mode on the provided buffer?

How are you debugging this anyway?  Things just worked for me when done 
interactively.

Eric



More information about the XEmacs-Beta mailing list