[antlr-interest] antlrworks 3.0ea8 unreachable error
Terence Parr
parrt at cs.usfca.edu
Mon Mar 20 15:40:10 PST 2006
stick with one grammar file for now though you can say "lexer grammar
foo;" and put in separate file.
Ter
On Mar 20, 2006, at 3:32 PM, Martin d'Anjou wrote:
> On Mon, 20 Mar 2006, O.E. Dragon wrote:
>> On Mon, 20 Mar 2006 18:05:26 -0500 (EST)
>> "Martin d'Anjou" <mdanjou at neterion.com> wrote:
>>> The following highly simplified grammar:
>>>
>>> grammar mygrammar;
>>> def : ID;
>>> ID : LETTER;
>>> LETTER : 'a';
>>>
>>> Gives me this error in antlrworks:
>>> "The following token definitions are unreachable: LETTER"
>>>
>>> When I change "ID" to lower case "id", it works...
>>> Am I missing something?
>>
>> By convention, grammar rule that start with a lower case letter are
>> expected to be parser rules, and those starting with an upper case
>> letter are lexer rules.
>>
>> I don't know how ANTLR v3 works but in v2 you need to put parser
>> rules
>> in a separate grammar section.
>
> I have looked at the examples for v3, but I don't find how to
> create a seperate section for lexer rules. The closest is the
> ruby.g file, where it has the GVAR token defined in terms of ID,
> but I don't see what it is that explicitely seperates the grammar
> and the lexer.
>
> Martin
More information about the antlr-interest
mailing list