[antlr-interest] compilation error on grammar

Kay Roepke kroepke at classdump.org
Thu Aug 2 17:01:26 PDT 2007


On Aug 3, 2007, at 1:52 AM, Warner Onstine wrote:

>>>             pushFollow(FOLLOW_package_in_prog10);
>>>             package();
>>>             _fsp--;
>>>
>>> on the package(); call Eclipse (and a normal build) is telling me
>>> that: illegal start of an expression
>>> <identifier>(or this) expected
>>> '(' expected
>>
>> I advise against using line comments in the actions of ANTLR  
>> grammars.
>> All the lines of an action are passed through, without regard to
>> whether they happen to be partially or fully commented. The problem
>> comes from the fact that ANTLR (the target language-specific string
>> templates, I guess) sometimes expand portions of the actions with
>> content that includes a newline, thus prematurely terminating the
>> comment.
>>
>> Instead, use only /* explicitly bounded */ comments inside actions.
>>
>
> Ok, how do I turn this off? I'm not doing any comments in the Model.g
> file itself, all of the comments that show up in Java are generated by
> antlr. (If that's the problem you're referring to).

You can't turn it off, and it is not causing your problem. The  
comments are
just annotations and are comments after all.

You do have a rule called 'package', right?

I guess that Java doesn't like that as a method name (which ANTLR  
will turn
parser rule names into). I suggest renaming that rule.

Please provide the complete error message in your posts (or at least  
the line number
reported). It took me a while of hard staring to sort through the  
wrapped source code
to actually figure out why this code would be invalid or where the  
error was supposed
to be.

HTH,
-k
-- 
Kay Röpke
http://classdump.org/






More information about the antlr-interest mailing list